[oe-commits] Khem Raj : util-linux-ng-2.16: Replace siginterrupt with sigaction.

git version control git at git.openembedded.org
Wed Aug 5 20:29:03 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 4b3eefe53ff29779d6f1080f1f686d3eceba9fad
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=4b3eefe53ff29779d6f1080f1f686d3eceba9fad

Author: Khem Raj <raj.khem at gmail.com>
Date:   Wed Aug  5 13:26:58 2009 -0700

util-linux-ng-2.16: Replace siginterrupt with sigaction.

siginterrupt is obsoleted and newer versions of uclibc
has moved these functions to a different category which is
not enabled by default. Best is to replace it with
sigaction.

Signed-off-by: Khem Raj <raj.khem at gmail.com>

---

 .../util-linux-ng-replace-siginterrupt.patch       |   23 ++++++++++++++++++++
 recipes/util-linux-ng/util-linux-ng_2.16.bb        |    3 +-
 2 files changed, 25 insertions(+), 1 deletions(-)

diff --git a/recipes/util-linux-ng/util-linux-ng-2.16/util-linux-ng-replace-siginterrupt.patch b/recipes/util-linux-ng/util-linux-ng-2.16/util-linux-ng-replace-siginterrupt.patch
new file mode 100644
index 0000000..4b5eb73
--- /dev/null
+++ b/recipes/util-linux-ng/util-linux-ng-2.16/util-linux-ng-replace-siginterrupt.patch
@@ -0,0 +1,23 @@
+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);
diff --git a/recipes/util-linux-ng/util-linux-ng_2.16.bb b/recipes/util-linux-ng/util-linux-ng_2.16.bb
index c22219a..e81ccca 100644
--- a/recipes/util-linux-ng/util-linux-ng_2.16.bb
+++ b/recipes/util-linux-ng/util-linux-ng_2.16.bb
@@ -1,9 +1,10 @@
 require util-linux-ng.inc
 
-PR = "${INC_PR}.2"
+PR = "${INC_PR}.3"
 
 SRC_URI += "file://uclibc-compile.patch;patch=1 \
             file://tls.patch;patch=1 \
+	    file://util-linux-ng-replace-siginterrupt.patch;patch=1 \
            "
 
 EXTRA_OECONF += " --enable-libuuid --enable-libblkid \





More information about the Openembedded-commits mailing list