diff options
author | Khem Raj <raj.khem@gmail.com> | 2009-08-05 13:26:58 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2009-08-05 13:26:58 -0700 |
commit | 4b3eefe53ff29779d6f1080f1f686d3eceba9fad (patch) | |
tree | fa10136bde78ab450493c7c05997af4bc9da1150 /recipes/util-linux-ng/util-linux-ng-2.16 | |
parent | 3ea400c9bf63cf19228a25a307e92262c55ecb64 (diff) |
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@gmail.com>
Diffstat (limited to 'recipes/util-linux-ng/util-linux-ng-2.16')
-rw-r--r-- | recipes/util-linux-ng/util-linux-ng-2.16/util-linux-ng-replace-siginterrupt.patch | 23 |
1 files changed, 23 insertions, 0 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 0000000000..4b5eb73760 --- /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); |