From: <bi...@us...> - 2009-07-28 18:19:47
|
Revision: 5027 http://oorexx.svn.sourceforge.net/oorexx/?rev=5027&view=rev Author: bigrixx Date: 2009-07-28 18:19:30 +0000 (Tue, 28 Jul 2009) Log Message: ----------- fix sockets 64-bit portability problem Modified Paths: -------------- main/branches/4.0beta/trunk/extensions/rxsock/rxsockfn.cpp Modified: main/branches/4.0beta/trunk/extensions/rxsock/rxsockfn.cpp =================================================================== --- main/branches/4.0beta/trunk/extensions/rxsock/rxsockfn.cpp 2009-07-28 06:18:17 UTC (rev 5026) +++ main/branches/4.0beta/trunk/extensions/rxsock/rxsockfn.cpp 2009-07-28 18:19:30 UTC (rev 5027) @@ -649,7 +649,7 @@ int opt; struct linger lingStruct; int intVal; - long longVal; + socklen_t lenVal; socklen_t len; char *ptr; CONSTRXSTRING rxVar; @@ -711,7 +711,7 @@ /*--------------------------------------------------------------- * set up buffer *---------------------------------------------------------------*/ - longVal = intVal = 0; /* to eliminate compiler warning */ + lenVal = intVal = 0; /* to eliminate compiler warning */ switch (opt) { @@ -722,8 +722,8 @@ case SO_RCVBUF: case SO_SNDBUF: - ptr = (char *)&longVal; - len = sizeof(long); + ptr = (char *)&lenVal; + len = sizeof(lenVal); break; default: @@ -742,8 +742,7 @@ switch (opt) { case SO_LINGER: - sprintf(pBuffer,"%ld %ld", - (long) lingStruct.l_onoff, (long) lingStruct.l_linger); + sprintf(pBuffer,"%d %d", lingStruct.l_onoff, lingStruct.l_linger); break; case SO_TYPE: @@ -758,11 +757,11 @@ case SO_RCVBUF: case SO_SNDBUF: - sprintf(pBuffer,"%ld",(long) longVal); + sprintf(pBuffer, "%d", lenVal); break; default: - sprintf(pBuffer,"%ld",(long) intVal); + sprintf(pBuffer, "%d", intVal); } /*--------------------------------------------------------------- @@ -1624,9 +1623,9 @@ int opt; struct linger lingStruct; int intVal; - long longVal; - long longVal1; - long longVal2; + socklen_t lenVal; + int intVal1; + int intVal2; int len; char *ptr; @@ -1698,18 +1697,18 @@ ptr = (char *)&lingStruct; len = sizeof(lingStruct); - sscanf(argv[3].strptr,"%ld %ld",&longVal1,&longVal2); - lingStruct.l_onoff = (u_short)longVal1; - lingStruct.l_linger = (u_short)longVal2; + sscanf(argv[3].strptr,"%d %d",&intVal1,&intVal2); + lingStruct.l_onoff = (u_short)intVal1; + lingStruct.l_linger = (u_short)intVal2; break; case SO_RCVBUF: case SO_SNDBUF: - ptr = (char *)&longVal; - len = sizeof(long); + ptr = (char *)&lenVal; + len = sizeof(lenVal); - longVal = rxs2int(&(argv[3]),&rc); + lenVal = rxs2int(&(argv[3]),&rc); break; case SO_ERROR: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |