From: Mark H. <ma...@os...> - 2004-04-09 21:33:25
|
I checked a couple bug fixes for management access into CVS. The attached diff show the changes. I think that tipc_get_bearers is expected to return a size and that mng_prepare_re_msg was treating rmsg as if it wasn't a pointer. Mark. --- media.c 2004-03-30 07:11:38.000000000 -0800 +++ /home/markh/views/tipc/cvs_rw/source/unstable/net/tipc/media.c 2004-04-09 14:06:09.000000000 -0700 @@ -518,7 +518,7 @@ media++; } read_unlock_bh(&net_lock); - return TIPC_OK; + return buf.crs-raw; } --- manager.c 2004-03-09 09:34:28.000000000 -0800 +++ /home/markh/views/tipc/cvs_rw/source/unstable/net/tipc/manager.c 2004-04-09 14:08:16.000000000 -0700 @@ -158,12 +158,12 @@ const char* data, const uint size) { - memset(&rmsg, 0, sizeof (rmsg)); + memset(rmsg, 0, sizeof (*rmsg)); rmsg->cmd = htonl(cmd); rmsg->retval = htonl(res); memcpy(rmsg->usr_handle,usr_handle,sizeof(rmsg->usr_handle)); rmsg->result_len = htonl(sizeof(rmsg->result)); - sct[0].data = (const unchar *) &rmsg; + sct[0].data = (const unchar *) rmsg; sct[0].size = sizeof(*rmsg); if (!data) return; -- Mark Haverkamp <ma...@os...> |