PATCH: files/smb.c -- portability
Gerald Pfeifer
pfeifer at dbai.tuwien.ac.at
Wed Jan 22 16:07:30 CST 2003
A struct sockaddr is simply not the same as a struct sockaddr_in, even
if they _start_ the same.
Tested on SuSE Linux 8.1 and FreeBSD 4.7 (where without this patch we
get warnings).
Gerald
ChangeLog:
Properly cast struct sockaddr_in* to struct sockaddr* where needed.
Index: smb.c
===================================================================
RCS file: /home/wine/wine/files/smb.c,v
retrieving revision 1.13
diff -u -3 -p -r1.13 smb.c
--- smb.c 21 Nov 2002 03:45:03 -0000 1.13
+++ smb.c 22 Jan 2003 22:04:26 -0000
@@ -236,7 +236,7 @@ static BOOL NB_Lookup(LPCSTR host, struc
if(len<=0)
goto err;
- r = sendto(fd, buffer, len, 0, &sin, sizeof sin);
+ r = sendto(fd, buffer, len, 0, (struct sockaddr*)&sin, sizeof sin);
if(r<0)
{
FIXME("Error sending packet\n");
@@ -257,7 +257,7 @@ static BOOL NB_Lookup(LPCSTR host, struc
TRACE("Got response!\n");
fromsize = sizeof (fromaddr);
- r = recvfrom(fd, buffer, sizeof buffer, 0, &fromaddr, &fromsize);
+ r = recvfrom(fd, buffer, sizeof buffer, 0, (struct sockaddr*)&fromaddr, &fromsize);
if(r<0)
goto err;
@@ -1327,7 +1327,7 @@ connect:
unsigned char *x = (unsigned char *)&sin.sin_addr;
TRACE("Connecting to %d.%d.%d.%d ...\n", x[0],x[1],x[2],x[3]);
}
- r = connect(fd, &sin, sizeof sin);
+ r = connect(fd, (struct sockaddr*)&sin, sizeof sin);
if(!NB_SessionReq(fd, "*SMBSERVER", "WINE"))
{
More information about the wine-patches
mailing list