summaryrefslogtreecommitdiff
path: root/meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch
diff options
context:
space:
mode:
authorSaul Wold <sgw@linux.intel.com>2011-05-24 16:19:42 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-06-01 18:32:26 +0100
commit596e6807826c34a4f93d7cb26052d1bd7a985201 (patch)
treed4b16f78ef5eb8eff79f285f77c46b6be09ac7e1 /meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch
parentb6fdf7eb9a1c5927009d88c84df59e091f5b2a7d (diff)
downloadopenembedded-core-596e6807826c34a4f93d7cb26052d1bd7a985201.tar.gz
openembedded-core-596e6807826c34a4f93d7cb26052d1bd7a985201.tar.bz2
openembedded-core-596e6807826c34a4f93d7cb26052d1bd7a985201.tar.xz
openembedded-core-596e6807826c34a4f93d7cb26052d1bd7a985201.zip
util-linux: update to 2.19.1
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch')
-rw-r--r--meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch b/meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch
new file mode 100644
index 000000000..c5c0affcb
--- /dev/null
+++ b/meta/recipes-core/util-linux/util-linux-2.19.1/util-linux-ng-replace-siginterrupt.patch
@@ -0,0 +1,25 @@
+Upstream-Status: Pending
+
+Index: util-linux-ng-2.14/login-utils/login.c
+===================================================================
+--- util-linux-ng-2.14.orig/login-utils/login.c 2008-05-28 16:01:02.000000000 -0700
++++ util-linux-ng-2.14/login-utils/login.c 2009-03-04 18:31:42.000000000 -0800
+@@ -358,6 +358,7 @@
+ char *childArgv[10];
+ char *buff;
+ int childArgc = 0;
++ struct sigaction act;
+ #ifdef HAVE_SECURITY_PAM_MISC_H
+ int retcode;
+ pam_handle_t *pamh = NULL;
+@@ -373,7 +374,9 @@
+ pid = getpid();
+
+ signal(SIGALRM, timedout);
+- siginterrupt(SIGALRM,1); /* we have to interrupt syscalls like ioclt() */
++ (void) sigaction(SIGALRM, NULL, &act);
++ act.sa_flags &= ~SA_RESTART;
++ sigaction(SIGALRM, &act, NULL);
+ alarm((unsigned int)timeout);
+ signal(SIGQUIT, SIG_IGN);
+ signal(SIGINT, SIG_IGN);