rpms/redhat-lsb/devel redhat-lsb-trigger.patch, NONE, 1.1 redhat-lsb.spec, 1.47, 1.48

Tom Callaway spot at fedoraproject.org
Wed Oct 28 13:43:49 UTC 2009


Author: spot

Update of /cvs/pkgs/rpms/redhat-lsb/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv27721/devel

Modified Files:
	redhat-lsb.spec 
Added Files:
	redhat-lsb-trigger.patch 
Log Message:
fix 514760

redhat-lsb-trigger.patch:
 redhat_lsb_trigger.c |   87 ++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 79 insertions(+), 8 deletions(-)

--- NEW FILE redhat-lsb-trigger.patch ---
--- redhat_lsb_trigger.c.jj	2008-04-16 19:50:14.000000000 +0200
+++ redhat_lsb_trigger.c	2009-10-26 19:51:12.886058784 +0100
@@ -423,10 +423,76 @@ is_ia64 (void)
 #define is_ia64() 0
 #endif
 
+char *
+strtok (char *p, const char *delim)
+{
+  static char *olds;
+  const char *d;
+  char *token;
+  if (p == NULL)
+    p = olds;
+  while (*p)
+    {
+      for (d = delim; *d; d++)
+	if (*p == *d)
+	  break;
+      if (!*d)
+	break;
+      p++;
+    }
+  if (!*p)
+    {
+      olds = p;
+      return NULL;
+    }
+  token = p;
+  while (*p)
+    {
+      for (d = delim; *d; d++)
+	if (*p == *d)
+	  break;
+      if (*d)
+	break;
+      p++;
+    }
+  if (!*p)
+    olds = p;
+  else
+    {
+      *p = '\0';
+      olds = p + 1;
+    }
+  return token;
+}
+
+size_t
+strlen (const char *s)
+{
+  const char *p;
+  for (p = s; *p; ++p);
+  return p - s;
+}
+
+void *
+mempcpy (void *dst, const void *src, size_t n)
+{
+  char *d = dst;
+  const char *s = src;
+  while (n--)
+    *d++ = *s++;
+  return d;
+}
+
+char *
+strcpy (char *dst, const char *src)
+{
+  char *ret = dst;
+  while ((*dst++ = *src++) != '\0');
+  return ret;
+}
+
 int main (int argc, char **argv)
 {
-/* redhat_lsb_trigger.c:428: warning: unused variable 'ret' */
-/*  long ret; */ 
   INTERNAL_SYSCALL_DECL (err);
   char lsbsover[] = LSBSOVER;
   char *LSBVER, *p = lsbsover;
@@ -455,11 +521,18 @@ void __libc_csu_fini (void) { }
 pid_t __fork (void) { return -1; }
 char thr_buf[65536];
 
+void
+__attribute__ ((noreturn))
+__stack_chk_fail (void)
+{
+  INTERNAL_SYSCALL_DECL (err);
+  while (1)
+    INTERNAL_SYSCALL (exit, err, 1, 1);
+}
+
 #ifndef __powerpc__
 
-/* /usr/lib/gcc/ppc64-redhat-linux/4.1.2/../../../../lib64/libc.a(libc-start.o): In function `__libc_start_main':
- *  * (.opd+0x10): multiple definition of `__libc_start_main'  */
-int ___libc_start_main (int (*main) (int argc, char **argv),
+int __libc_start_main (int (*main) (int argc, char **argv),
                        int argc, char **argv,
 		       void (*init) (void), void (*fini) (void),
 		       void (*rtld_fini) (void), void * stack_end)
@@ -472,9 +545,7 @@ struct startup_info
   void (*fini) (void);
 };
 
-/* /usr/lib/gcc/ppc64-redhat-linux/4.1.2/../../../../lib64/libc.a(libc-start.o): In function `__libc_start_main':
- * (.opd+0x10): multiple definition of `__libc_start_main'  */
-int ___libc_start_main (int argc, char **argv, char **ev,
+int __libc_start_main (int argc, char **argv, char **ev,
 		       void *auxvec, void (*rtld_fini) (void),
 		       struct startup_info *stinfo,
 		       char **stack_on_entry)


Index: redhat-lsb.spec
===================================================================
RCS file: /cvs/pkgs/rpms/redhat-lsb/devel/redhat-lsb.spec,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -p -r1.47 -r1.48
--- redhat-lsb.spec	21 Oct 2009 15:46:22 -0000	1.47
+++ redhat-lsb.spec	28 Oct 2009 13:43:48 -0000	1.48
@@ -49,11 +49,12 @@
 Summary: LSB support for Red Hat Linux
 Name: redhat-lsb
 Version: 3.2
-Release: 6%{?dist}
+Release: 7%{?dist}
 URL: http://www.linuxfoundation.org/collaborate/workgroups/lsb
 Source0: %{name}-%{version}-%{srcrelease}.tar.bz2
 Patch0: lsb-release-3.1-update-init-functions.patch
 Patch1: redhat-lsb-lsb_start_daemon-fix.patch
+Patch2: redhat-lsb-trigger.patch
 License: GPLv2
 Group: System Environment/Base
 BuildRoot: %{_tmppath}/%{name}-root
@@ -528,6 +529,7 @@ installed on the system.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p0 -b .triggerfix
 
 %build
 cd lsb-release-%{upstreamlsbrelver}
@@ -582,7 +584,7 @@ ln -snf ../../../sbin/chkconfig $RPM_BUI
 
 # According to https://bugzilla.redhat.com/show_bug.cgi?id=232918 , the '-static' option
 # is imported against segfault error while running redhat_lsb_trigger
-gcc $RPM_OPT_FLAGS -Os -static -o redhat_lsb_trigger{.%{_target_cpu},.c} -DLSBSOVER='"%{lsbsover}"' \
+gcc $RPM_OPT_FLAGS -Os -static -fno-stack-protector -o redhat_lsb_trigger{.%{_target_cpu},.c} -DLSBSOVER='"%{lsbsover}"' \
   -DLDSO='"%{ldso}"' -DLSBLDSO='"/%{_lib}/%{lsbldso}"' -D_GNU_SOURCE
 install -m 700 redhat_lsb_trigger.%{_target_cpu} \
   $RPM_BUILD_ROOT%{_sbindir}/redhat_lsb_trigger.%{_target_cpu}
@@ -647,6 +649,9 @@ fi
 #/usr/X11R6/lib/X11/rgb.txt
 
 %changelog
+* Tue Oct 27 2009 Tom "spot" Callaway <tcallawa at redhat.com> - 3.2-7
+- apply fix from bz514760 (thanks to Jakub Jelinek)
+
 * Wed Oct 21 2009 Tom "spot" Callaway <tcallawa at redhat.com> - 3.2-6
 - apply fix from bz485367 (thanks to Jon Thomas)
 




More information about the scm-commits mailing list