svn commit: samba r5717 - in branches/SAMBA_3_0/source/nmbd: .

jerry at samba.org jerry at samba.org
Wed Mar 9 22:20:45 GMT 2005


Author: jerry
Date: 2005-03-09 22:20:40 +0000 (Wed, 09 Mar 2005)
New Revision: 5717

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=5717

Log:
BUG 2215: horrible code in nmbd_winsproxy.c;  gcc folks at redhat claim its in violation of the C spec.  It's so horrible I believe them
Modified:
   branches/SAMBA_3_0/source/nmbd/nmbd_winsproxy.c


Changeset:
Modified: branches/SAMBA_3_0/source/nmbd/nmbd_winsproxy.c
===================================================================
--- branches/SAMBA_3_0/source/nmbd/nmbd_winsproxy.c	2005-03-09 21:56:00 UTC (rev 5716)
+++ branches/SAMBA_3_0/source/nmbd/nmbd_winsproxy.c	2005-03-09 22:20:40 UTC (rev 5717)
@@ -190,12 +190,15 @@
                                          struct packet_struct *incoming_packet,
                                          struct nmb_name *question_name)
 {
-	long *ud[(sizeof(struct userdata_struct) + sizeof(struct subrec *) + 
-		sizeof(struct packet_struct *))/sizeof(long *) + 1];
-	struct userdata_struct *userdata = (struct userdata_struct *)ud;
+	union {
+	    struct userdata_struct ud;
+	    char c[sizeof(struct userdata_struct) + sizeof(struct subrec *) + 
+		sizeof(struct packet_struct *)+sizeof(long*)];
+	} ud;
+	struct userdata_struct *userdata = &ud.ud;
 	unstring qname;
 
-	memset(ud, '\0', sizeof(ud));
+	memset(&ud, '\0', sizeof(ud));
  
 	userdata->copy_fn = wins_proxy_userdata_copy_fn;
 	userdata->free_fn = wins_proxy_userdata_free_fn;



More information about the samba-cvs mailing list