gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r31576 - gnunet/src/gns


From: gnunet
Subject: [GNUnet-SVN] r31576 - gnunet/src/gns
Date: Thu, 19 Dec 2013 19:38:55 +0100

Author: LRN
Date: 2013-12-19 19:38:55 +0100 (Thu, 19 Dec 2013)
New Revision: 31576

Modified:
   gnunet/src/gns/Makefile.am
   gnunet/src/gns/gnunet-gns-helper-service-w32.c
   gnunet/src/gns/w32nsp.c
   gnunet/src/gns/w32resolver.h
Log:
W32 NSP: Don't use 64-bit types, link to libgcc statically

Modified: gnunet/src/gns/Makefile.am
===================================================================
--- gnunet/src/gns/Makefile.am  2013-12-19 18:38:51 UTC (rev 31575)
+++ gnunet/src/gns/Makefile.am  2013-12-19 18:38:55 UTC (rev 31576)
@@ -212,7 +212,7 @@
   -lole32 -lws2_32
 libw32nsp_la_LDFLAGS = \
   -export-symbols $(top_srcdir)/src/gns/w32nsp.def \
-  $(GN_LIB_LDFLAGS)
+  $(GN_LIB_LDFLAGS) -static-libgcc
 
 libgnunetgns_la_SOURCES = \
  gns_api.c gns.h

Modified: gnunet/src/gns/gnunet-gns-helper-service-w32.c
===================================================================
--- gnunet/src/gns/gnunet-gns-helper-service-w32.c      2013-12-19 18:38:51 UTC 
(rev 31575)
+++ gnunet/src/gns/gnunet-gns-helper-service-w32.c      2013-12-19 18:38:55 UTC 
(rev 31576)
@@ -364,10 +364,8 @@
   msg->sc_data1 = htonl (rq->sc.Data1);
   msg->sc_data2 = htons (rq->sc.Data2);
   msg->sc_data3 = htons (rq->sc.Data3);
-  msg->sc_data4 = 0;
   for (i = 0; i < 8; i++)
-    msg->sc_data4 |= rq->sc.Data4[i] << ((7 - i) * 8);
-  msg->sc_data4 = GNUNET_htonll (msg->sc_data4);
+    msg->sc_data4[i] = rq->sc.Data4[i];
   qs = (WSAQUERYSETW *) &msg[1];
   ptr = (char *) &qs[1];
   GNUNET_break (size_recalc == (size_t) ((char *) ptr - (char *) msg));
@@ -649,7 +647,6 @@
   const struct GNUNET_W32RESOLVER_GetMessage *msg;
   GUID sc;
   uint16_t size;
-  uint64_t data4;
   int i;
   const wchar_t *hostname;
   int af;
@@ -674,16 +671,20 @@
   msg = (const struct GNUNET_W32RESOLVER_GetMessage *) message;
   size = msize - sizeof (struct GNUNET_W32RESOLVER_GetMessage);
   af = ntohl (msg->af);
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Got NBO GUID: 
%08X-%04X-%04X-%016llX\n",
-      msg->sc_data1, msg->sc_data2, msg->sc_data3, msg->sc_data4);
+  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+      "Got NBO GUID: %08X-%04X-%04X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n",
+      msg->sc_data1, msg->sc_data2, msg->sc_data3, msg->sc_data4[0], 
msg->sc_data4[1],
+      msg->sc_data4[2], msg->sc_data4[3], msg->sc_data4[4], msg->sc_data4[5],
+      msg->sc_data4[6], msg->sc_data4[7]);
   sc.Data1 = ntohl (msg->sc_data1);
   sc.Data2 = ntohs (msg->sc_data2);
   sc.Data3 = ntohs (msg->sc_data3);
-  data4 = GNUNET_ntohll (msg->sc_data4);
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Got GUID: %08X-%04X-%04X-%016llX\n",
-      sc.Data1, sc.Data2, sc.Data3, data4);
   for (i = 0; i < 8; i++)
-    sc.Data4[i] = 0xFF & (data4 >> ((7 - i) * 8));
+    sc.Data4[i] = msg->sc_data4[i];
+  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+              "Got GUID: 
%08X-%04X-%04X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n",
+              sc.Data1, sc.Data2, sc.Data3, sc.Data4[0], sc.Data4[1], 
sc.Data4[2],
+              sc.Data4[3], sc.Data4[4], sc.Data4[5], sc.Data4[6], sc.Data4[7]);
 
   hostname = (const wchar_t *) &msg[1];
   if (hostname[size - 1] != L'\0')

Modified: gnunet/src/gns/w32nsp.c
===================================================================
--- gnunet/src/gns/w32nsp.c     2013-12-19 18:38:51 UTC (rev 31575)
+++ gnunet/src/gns/w32nsp.c     2013-12-19 18:38:55 UTC (rev 31576)
@@ -82,18 +82,6 @@
 #define STATE_REPLY  0x04
 #define STATE_GHBN   0x08
 
-uint64_t
-GNUNET_htonll (uint64_t n)
-{
-#if __BYTE_ORDER == __BIG_ENDIAN
-  return n;
-#elif __BYTE_ORDER == __LITTLE_ENDIAN
-  return (((uint64_t) htonl (n)) << 32) + htonl (n >> 32);
-#else
-  #error byteorder undefined
-#endif
-}
-
 CRITICAL_SECTION records_cs;
 
 struct record
@@ -258,10 +246,8 @@
   msg->sc_data1 = htonl (lpqsRestrictions->lpServiceClassId->Data1);
   msg->sc_data2 = htons (lpqsRestrictions->lpServiceClassId->Data2);
   msg->sc_data3 = htons (lpqsRestrictions->lpServiceClassId->Data3);
-  msg->sc_data4 = 0;
   for (i = 0; i < 8; i++)
-    msg->sc_data4 |= ((uint64_t) lpqsRestrictions->lpServiceClassId->Data4[i]) 
<< ((7 - i) * 8);
-  msg->sc_data4 = GNUNET_htonll (msg->sc_data4);
+    msg->sc_data4[i] = lpqsRestrictions->lpServiceClassId->Data4[i];
   *resolver = connect_to_dns_resolver ();
   if (*resolver != INVALID_SOCKET)
   {

Modified: gnunet/src/gns/w32resolver.h
===================================================================
--- gnunet/src/gns/w32resolver.h        2013-12-19 18:38:51 UTC (rev 31575)
+++ gnunet/src/gns/w32resolver.h        2013-12-19 18:38:55 UTC (rev 31576)
@@ -62,7 +62,7 @@
   uint32_t sc_data1 GNUNET_PACKED;
   uint16_t sc_data2 GNUNET_PACKED;
   uint16_t sc_data3 GNUNET_PACKED;
-  uint64_t sc_data4 GNUNET_PACKED;
+  uint8_t sc_data4[8];
   /* followed by 0-terminated string for A/AAAA lookup */
 };
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]