These two patches work for me to get libxipc built.

However, there's still an alignment problem with ArpHeader in packet.cc.

Perhaps we should add a means of selectively disabling the alignment warnings (we use -Werror by default) until we can find and fix them where relevant.
--- ./libxipc/xrl_args.cc.orig  2008-10-27 11:40:07.000000000 +0000
+++ ./libxipc/xrl_args.cc       2008-10-27 11:41:22.000000000 +0000
@@ -27,6 +27,8 @@
 #include "libxorp/xlog.h"
 #include "libxorp/debug.h"
 
+#include "libproto/packet.hh"
+
 #include <functional>
 #include <stdexcept>
 
@@ -773,8 +775,7 @@
     if (len < 4)
        return 0;
 
-    uint32_t header = *(reinterpret_cast<const uint32_t*>(in));
-    header = ntohl(header);
+    uint32_t header = extract_32(in);
 
     // Check header sanity
     if ((header >> 24) != PACKING_CHECK_CODE)

--- ./libxipc/xrl_atom.cc.orig  2008-10-27 11:41:32.000000000 +0000
+++ ./libxipc/xrl_atom.cc       2008-10-27 11:42:10.000000000 +0000
@@ -28,6 +28,8 @@
 #include "libxorp/c_format.hh"
 #include "libxorp/xlog.h"
 
+#include "libproto/packet.hh"
+
 #include <map>
 #include <string>
 
@@ -1062,8 +1064,7 @@
     if (len < sizeof(tl))
        return 0;
 
-    tl = *(reinterpret_cast<const uint32_t*>(buf));
-    tl = ntohl(tl);
+    tl = extract_32(buf);
 
     buf += sizeof(tl);
     len -= sizeof(tl);

_______________________________________________
Xorp-hackers mailing list
[email protected]
http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers

Reply via email to