From e4dc78845cec721013be4170231936ef371afe2f Mon Sep 17 00:00:00 2001 From: Derrick Brashear Date: Thu, 12 May 2011 10:59:53 -0400 Subject: [PATCH] afscp: tellmeaboutyourself stub wants host byte order we get network byte order addresses from rx_getAllAddr; swap back to host order. Change-Id: Id0c5e70399422593c574958f905984c9edf8e6d4 Reviewed-on: http://gerrit.openafs.org/4644 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- src/libafscp/afscp_callback.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/libafscp/afscp_callback.c b/src/libafscp/afscp_callback.c index b5fde52..d6c1217 100644 --- a/src/libafscp/afscp_callback.c +++ b/src/libafscp/afscp_callback.c @@ -52,6 +52,7 @@ static int init_afs_cb(void) { int cm_noIPAddr; /* number of client network interfaces */ + int i; #ifdef AFS_NT40_ENV /* * This Windows section was pulled in from changes to src/venus/afsio.c but is @@ -64,7 +65,6 @@ init_afs_cb(void) int cm_SubnetMask[CM_MAXINTERFACE_ADDR]; /* client's subnet mask in host order */ int cm_NetMtu[CM_MAXINTERFACE_ADDR]; /* client's MTU sizes */ int cm_NetFlags[CM_MAXINTERFACE_ADDR]; /* network flags */ - int i; UuidCreate((UUID *) & afs_cb_interface.uuid); cm_noIPAddr = CM_MAXINTERFACE_ADDR; @@ -91,8 +91,12 @@ init_afs_cb(void) AFS_MAX_INTERFACE_ADDR); if (cm_noIPAddr < 0) afs_cb_interface.numberOfInterfaces = 0; - else + else { afs_cb_interface.numberOfInterfaces = cm_noIPAddr; + /* we expect these in host byte order */ + for (i = 0; i < cm_noIPAddr; i++) + afs_cb_interface.addr_in[i] = ntohl(afs_cb_interface.addr_in[i]); + } #endif afs_cb_inited = 1; return 0; -- 1.7.1