* sunrpc/xdr_stdio.c (xdrstdio_getlong, xdrstdio_putlong):
authorUlrich Drepper <drepper@redhat.com>
Tue, 22 Mar 2005 09:14:36 +0000 (09:14 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 22 Mar 2005 09:14:36 +0000 (09:14 +0000)
Convert correctly between long/int on 64bit big-endian.

ChangeLog
localedata/ChangeLog
localedata/charmaps/WINDOWS-31J
sunrpc/xdr_stdio.c

index d9f2f46..92e4872 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-03-21  Thorsten Kukuk  <kukuk@suse.de>
+
+       * sunrpc/xdr_stdio.c (xdrstdio_getlong, xdrstdio_putlong):
+       Convert correctly between long/int on 64bit big-endian.
+
 2005-03-21  David Mosberger  <davidm@hpl.hp.com>
 
        * sysdeps/ia64/_mcount.S: Newer kernels don't like register-frames
index e67b24a..e454cd0 100644 (file)
@@ -1,3 +1,7 @@
+2005-03-21  Jakub Jelinek  <jakub@redhat.com>
+
+       * charmaps/WINDOWS-31J: Add % before alias keyword.
+
 2005-02-27  Denis Barbier  <barbier@debian.org>
 
        [BZ #38]
index 76316c5..d5ab12a 100644 (file)
@@ -8,7 +8,7 @@
 % MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>, 2003.
 % Last changed: 2003-07-18
 
-alias CP932
+alias CP932
 
 CHARMAP
 <U0000>     /x00         NULL
index 4daa062..e73c5a5 100644 (file)
@@ -108,20 +108,20 @@ xdrstdio_destroy (XDR *xdrs)
 static bool_t
 xdrstdio_getlong (XDR *xdrs, long *lp)
 {
-  int32_t mycopy;
+  u_int32_t mycopy;
 
-  if (fread ((caddr_t) & mycopy, 4, 1, (FILE *) xdrs->x_private) != 1)
+  if (fread ((caddr_t) &mycopy, 4, 1, (FILE *) xdrs->x_private) != 1)
     return FALSE;
-  *lp = (int32_t) ntohl (mycopy);
+  *lp = (long) ntohl (mycopy);
   return TRUE;
 }
 
 static bool_t
 xdrstdio_putlong (XDR *xdrs, const long *lp)
 {
-  long mycopy = htonl (*lp);
-  lp = &mycopy;
-  if (fwrite ((caddr_t) lp, 4, 1, (FILE *) xdrs->x_private) != 1)
+  int32_t mycopy = htonl ((u_int32_t) *lp);
+
+  if (fwrite ((caddr_t) &mycopy, 4, 1, (FILE *) xdrs->x_private) != 1)
     return FALSE;
   return TRUE;
 }