1*4882a593Smuzhiyun[PATCH] Replace susv3 legacy function with modern equivalents 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunSigned-off-by: Peter Korsgaard <jacmet@sunsite.dk> 4*4882a593Smuzhiyun--- 5*4882a593Smuzhiyun nuttcp-6.1.2.c | 90 ++++++++++++++++++++++++++++----------------------------- 6*4882a593Smuzhiyun 1 file changed, 45 insertions(+), 45 deletions(-) 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunIndex: nuttcp-6.1.2/nuttcp-6.1.2.c 9*4882a593Smuzhiyun=================================================================== 10*4882a593Smuzhiyun--- nuttcp-6.1.2.orig/nuttcp-6.1.2.c 11*4882a593Smuzhiyun+++ nuttcp-6.1.2/nuttcp-6.1.2.c 12*4882a593Smuzhiyun@@ -1925,11 +1925,11 @@ 13*4882a593Smuzhiyun if (udp && !haverateopt) 14*4882a593Smuzhiyun rate = DEFAULT_UDP_RATE; 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun- bzero((char *)&frominet, sizeof(frominet)); 17*4882a593Smuzhiyun- bzero((char *)&clientaddr, sizeof(clientaddr)); 18*4882a593Smuzhiyun+ memset((char *)&frominet, 0, sizeof(frominet)); 19*4882a593Smuzhiyun+ memset((char *)&clientaddr, 0, sizeof(clientaddr)); 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #ifdef AF_INET6 22*4882a593Smuzhiyun- bzero((char *)&clientaddr6, sizeof(clientaddr6)); 23*4882a593Smuzhiyun+ memset((char *)&clientaddr6, 0, sizeof(clientaddr6)); 24*4882a593Smuzhiyun clientscope6 = 0; 25*4882a593Smuzhiyun #endif 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun@@ -1985,7 +1985,7 @@ 28*4882a593Smuzhiyun } 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun while (stream_idx <= nstream) { 31*4882a593Smuzhiyun- bzero(&hints, sizeof(hints)); 32*4882a593Smuzhiyun+ memset(&hints, 0, sizeof(hints)); 33*4882a593Smuzhiyun res[stream_idx] = NULL; 34*4882a593Smuzhiyun if (explicitaf) hints.ai_family = af; 35*4882a593Smuzhiyun if ((cp2 = strchr(cp1, '/'))) { 36*4882a593Smuzhiyun@@ -3013,12 +3013,12 @@ 37*4882a593Smuzhiyun if ((stream_idx > 0) && skip_data) 38*4882a593Smuzhiyun break; 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun- bzero((char *)&sinme[stream_idx], sizeof(sinme[stream_idx])); 41*4882a593Smuzhiyun- bzero((char *)&sinhim[stream_idx], sizeof(sinhim[stream_idx])); 42*4882a593Smuzhiyun+ memset((char *)&sinme[stream_idx], 0, sizeof(sinme[stream_idx])); 43*4882a593Smuzhiyun+ memset((char *)&sinhim[stream_idx], 0, sizeof(sinhim[stream_idx])); 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun #ifdef AF_INET6 46*4882a593Smuzhiyun- bzero((char *)&sinme6[stream_idx], sizeof(sinme6[stream_idx])); 47*4882a593Smuzhiyun- bzero((char *)&sinhim6[stream_idx], sizeof(sinhim6[stream_idx])); 48*4882a593Smuzhiyun+ memset((char *)&sinme6[stream_idx], 0, sizeof(sinme6[stream_idx])); 49*4882a593Smuzhiyun+ memset((char *)&sinhim6[stream_idx], 0, sizeof(sinhim6[stream_idx])); 50*4882a593Smuzhiyun #endif 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun if (((trans && !reverse) && (stream_idx > 0)) || 53*4882a593Smuzhiyun@@ -3028,15 +3028,15 @@ 54*4882a593Smuzhiyun if (client) { 55*4882a593Smuzhiyun if (af == AF_INET) { 56*4882a593Smuzhiyun sinhim[stream_idx].sin_family = af; 57*4882a593Smuzhiyun- bcopy((char *)&(((struct sockaddr_in *)res[stream_idx]->ai_addr)->sin_addr), 58*4882a593Smuzhiyun- (char *)&sinhim[stream_idx].sin_addr.s_addr, 59*4882a593Smuzhiyun+ memcpy((char *)&sinhim[stream_idx].sin_addr.s_addr, 60*4882a593Smuzhiyun+ (char *)&(((struct sockaddr_in *)res[stream_idx]->ai_addr)->sin_addr), 61*4882a593Smuzhiyun sizeof(sinhim[stream_idx].sin_addr.s_addr)); 62*4882a593Smuzhiyun } 63*4882a593Smuzhiyun #ifdef AF_INET6 64*4882a593Smuzhiyun else if (af == AF_INET6) { 65*4882a593Smuzhiyun sinhim6[stream_idx].sin6_family = af; 66*4882a593Smuzhiyun- bcopy((char *)&(((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_addr), 67*4882a593Smuzhiyun- (char *)&sinhim6[stream_idx].sin6_addr.s6_addr, 68*4882a593Smuzhiyun+ memcpy((char *)&sinhim6[stream_idx].sin6_addr.s6_addr, 69*4882a593Smuzhiyun+ (char *)&(((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_addr), 70*4882a593Smuzhiyun sizeof(sinhim6[stream_idx].sin6_addr.s6_addr)); 71*4882a593Smuzhiyun sinhim6[stream_idx].sin6_scope_id = ((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_scope_id; 72*4882a593Smuzhiyun } 73*4882a593Smuzhiyun@@ -3113,8 +3113,8 @@ 74*4882a593Smuzhiyun * to the multicast group 75*4882a593Smuzhiyun */ 76*4882a593Smuzhiyun if (af == AF_INET) { 77*4882a593Smuzhiyun- bcopy((char *)&sinhim[1].sin_addr.s_addr, 78*4882a593Smuzhiyun- (char *)&save_sinhim.sin_addr.s_addr, 79*4882a593Smuzhiyun+ memcpy((char *)&save_sinhim.sin_addr.s_addr, 80*4882a593Smuzhiyun+ (char *)&sinhim[1].sin_addr.s_addr, 81*4882a593Smuzhiyun sizeof(struct in_addr)); 82*4882a593Smuzhiyun if (!client && (irvers >= 50505)) { 83*4882a593Smuzhiyun struct sockaddr_in peer; 84*4882a593Smuzhiyun@@ -3124,8 +3124,8 @@ 85*4882a593Smuzhiyun &peerlen) < 0) { 86*4882a593Smuzhiyun err("getpeername"); 87*4882a593Smuzhiyun } 88*4882a593Smuzhiyun- bcopy((char *)&peer.sin_addr.s_addr, 89*4882a593Smuzhiyun- (char *)&sinhim[1].sin_addr.s_addr, 90*4882a593Smuzhiyun+ memcpy((char *)&sinhim[1].sin_addr.s_addr, 91*4882a593Smuzhiyun+ (char *)&peer.sin_addr.s_addr, 92*4882a593Smuzhiyun sizeof(struct in_addr)); 93*4882a593Smuzhiyun } 94*4882a593Smuzhiyun else { 95*4882a593Smuzhiyun@@ -3136,8 +3136,8 @@ 96*4882a593Smuzhiyun &melen) < 0) { 97*4882a593Smuzhiyun err("getsockname"); 98*4882a593Smuzhiyun } 99*4882a593Smuzhiyun- bcopy((char *)&me.sin_addr.s_addr, 100*4882a593Smuzhiyun- (char *)&sinhim[1].sin_addr.s_addr, 101*4882a593Smuzhiyun+ memcpy((char *)&sinhim[1].sin_addr.s_addr, 102*4882a593Smuzhiyun+ (char *)&me.sin_addr.s_addr, 103*4882a593Smuzhiyun sizeof(struct in_addr)); 104*4882a593Smuzhiyun } 105*4882a593Smuzhiyun sinhim[1].sin_addr.s_addr &= 106*4882a593Smuzhiyun@@ -4197,13 +4197,13 @@ 107*4882a593Smuzhiyun &melen) < 0) { 108*4882a593Smuzhiyun err("getsockname"); 109*4882a593Smuzhiyun } 110*4882a593Smuzhiyun- bcopy((char *)&me.sin_addr.s_addr, 111*4882a593Smuzhiyun- (char *)&mc_group.imr_multiaddr.s_addr, 112*4882a593Smuzhiyun+ memcpy((char *)&mc_group.imr_multiaddr.s_addr, 113*4882a593Smuzhiyun+ (char *)&me.sin_addr.s_addr, 114*4882a593Smuzhiyun sizeof(struct in_addr)); 115*4882a593Smuzhiyun } 116*4882a593Smuzhiyun else { 117*4882a593Smuzhiyun- bcopy((char *)&peer.sin_addr.s_addr, 118*4882a593Smuzhiyun- (char *)&mc_group.imr_multiaddr.s_addr, 119*4882a593Smuzhiyun+ memcpy((char *)&mc_group.imr_multiaddr.s_addr, 120*4882a593Smuzhiyun+ (char *)&peer.sin_addr.s_addr, 121*4882a593Smuzhiyun sizeof(struct in_addr)); 122*4882a593Smuzhiyun } 123*4882a593Smuzhiyun mc_group.imr_multiaddr.s_addr &= htonl(0xFFFFFF); 124*4882a593Smuzhiyun@@ -4330,12 +4330,12 @@ 125*4882a593Smuzhiyun if(udp) { 126*4882a593Smuzhiyun strcpy(buf, "BOD0"); 127*4882a593Smuzhiyun if (multicast) { 128*4882a593Smuzhiyun- bcopy((char *)&sinhim[1].sin_addr.s_addr, 129*4882a593Smuzhiyun- (char *)&save_mc.sin_addr.s_addr, 130*4882a593Smuzhiyun- sizeof(struct in_addr)); 131*4882a593Smuzhiyun- bcopy((char *)&save_sinhim.sin_addr.s_addr, 132*4882a593Smuzhiyun+ memcpy((char *)&save_mc.sin_addr.s_addr, 133*4882a593Smuzhiyun (char *)&sinhim[1].sin_addr.s_addr, 134*4882a593Smuzhiyun sizeof(struct in_addr)); 135*4882a593Smuzhiyun+ memcpy((char *)&sinhim[1].sin_addr.s_addr, 136*4882a593Smuzhiyun+ (char *)&save_sinhim.sin_addr.s_addr, 137*4882a593Smuzhiyun+ sizeof(struct in_addr)); 138*4882a593Smuzhiyun } 139*4882a593Smuzhiyun (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr start */ 140*4882a593Smuzhiyun if (two_bod) { 141*4882a593Smuzhiyun@@ -4344,8 +4344,8 @@ 142*4882a593Smuzhiyun (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr start */ 143*4882a593Smuzhiyun } 144*4882a593Smuzhiyun if (multicast) { 145*4882a593Smuzhiyun- bcopy((char *)&save_mc.sin_addr.s_addr, 146*4882a593Smuzhiyun- (char *)&sinhim[1].sin_addr.s_addr, 147*4882a593Smuzhiyun+ memcpy((char *)&sinhim[1].sin_addr.s_addr, 148*4882a593Smuzhiyun+ (char *)&save_mc.sin_addr.s_addr, 149*4882a593Smuzhiyun sizeof(struct in_addr)); 150*4882a593Smuzhiyun } 151*4882a593Smuzhiyun if (timeout) 152*4882a593Smuzhiyun@@ -4361,7 +4361,7 @@ 153*4882a593Smuzhiyun fflush(stdout); 154*4882a593Smuzhiyun } 155*4882a593Smuzhiyun if (udplossinfo) 156*4882a593Smuzhiyun- bcopy(&nbytes, buf + 24, 8); 157*4882a593Smuzhiyun+ memcpy(buf + 24, &nbytes, 8); 158*4882a593Smuzhiyun if (!udp && interval && !(format & NORETRANS) && 159*4882a593Smuzhiyun ((retransinfo == 1) || 160*4882a593Smuzhiyun ((retransinfo >= 2) && 161*4882a593Smuzhiyun@@ -4372,13 +4372,13 @@ 162*4882a593Smuzhiyun tmp = 0x5254524Eu; /* "RTRN" */ 163*4882a593Smuzhiyun else 164*4882a593Smuzhiyun tmp = 0x48525452u; /* "HRTR" */ 165*4882a593Smuzhiyun- bcopy(&nretrans, buf + 24, 4); 166*4882a593Smuzhiyun- bcopy(&tmp, buf + 28, 4); 167*4882a593Smuzhiyun+ memcpy(buf + 24, &nretrans, 4); 168*4882a593Smuzhiyun+ memcpy(buf + 28, &tmp, 4); 169*4882a593Smuzhiyun } 170*4882a593Smuzhiyun else { 171*4882a593Smuzhiyun send_retrans = 0; 172*4882a593Smuzhiyun if (!udp) 173*4882a593Smuzhiyun- bzero(buf + 24, 8); 174*4882a593Smuzhiyun+ memset(buf + 24, 0, 8); 175*4882a593Smuzhiyun } 176*4882a593Smuzhiyun if (nbuf == INT_MAX) 177*4882a593Smuzhiyun nbuf = ULLONG_MAX; 178*4882a593Smuzhiyun@@ -4423,12 +4423,12 @@ 179*4882a593Smuzhiyun nbytes += buflen; 180*4882a593Smuzhiyun cnt = 0; 181*4882a593Smuzhiyun if (udplossinfo) 182*4882a593Smuzhiyun- bcopy(&nbytes, buf + 24, 8); 183*4882a593Smuzhiyun+ memcpy(buf + 24, &nbytes, 8); 184*4882a593Smuzhiyun if (send_retrans) { 185*4882a593Smuzhiyun nretrans = get_retrans( 186*4882a593Smuzhiyun fd[stream_idx + 1]); 187*4882a593Smuzhiyun nretrans -= iretrans; 188*4882a593Smuzhiyun- bcopy(&nretrans, buf + 24, 4); 189*4882a593Smuzhiyun+ memcpy(buf + 24, &nretrans, 4); 190*4882a593Smuzhiyun } 191*4882a593Smuzhiyun stream_idx++; 192*4882a593Smuzhiyun stream_idx = stream_idx % nstream; 193*4882a593Smuzhiyun@@ -4523,8 +4523,8 @@ 194*4882a593Smuzhiyun nbytes += cnt; 195*4882a593Smuzhiyun if(udp) { 196*4882a593Smuzhiyun if (multicast) 197*4882a593Smuzhiyun- bcopy((char *)&save_sinhim.sin_addr.s_addr, 198*4882a593Smuzhiyun- (char *)&sinhim[1].sin_addr.s_addr, 199*4882a593Smuzhiyun+ memcpy((char *)&sinhim[1].sin_addr.s_addr, 200*4882a593Smuzhiyun+ (char *)&save_sinhim.sin_addr.s_addr, 201*4882a593Smuzhiyun sizeof(struct in_addr)); 202*4882a593Smuzhiyun strcpy(buf, "EOD0"); 203*4882a593Smuzhiyun (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr end */ 204*4882a593Smuzhiyun@@ -4532,7 +4532,7 @@ 205*4882a593Smuzhiyun } else { 206*4882a593Smuzhiyun first_read = 1; 207*4882a593Smuzhiyun need_swap = 0; 208*4882a593Smuzhiyun- bzero(buf + 24, 8); 209*4882a593Smuzhiyun+ memset(buf + 24, 0, 8); 210*4882a593Smuzhiyun if (udp) { 211*4882a593Smuzhiyun ntbytesc = 0; 212*4882a593Smuzhiyun got_eod0 = 0; 213*4882a593Smuzhiyun@@ -4584,7 +4584,7 @@ 214*4882a593Smuzhiyun * goes off right here */ 215*4882a593Smuzhiyun if (udplossinfo) { 216*4882a593Smuzhiyun if (first_read) { 217*4882a593Smuzhiyun- bcopy(buf + 24, &ntbytesc, 218*4882a593Smuzhiyun+ memcpy(&ntbytesc, buf + 24, 219*4882a593Smuzhiyun 8); 220*4882a593Smuzhiyun first_read = 0; 221*4882a593Smuzhiyun if (ntbytesc > 0x100000000ull) 222*4882a593Smuzhiyun@@ -4598,7 +4598,7 @@ 223*4882a593Smuzhiyun } 224*4882a593Smuzhiyun } 225*4882a593Smuzhiyun if (!need_swap) 226*4882a593Smuzhiyun- bcopy(buf + 24, &ntbytesc, 227*4882a593Smuzhiyun+ memcpy(&ntbytesc, buf + 24, 228*4882a593Smuzhiyun 8); 229*4882a593Smuzhiyun else { 230*4882a593Smuzhiyun cp1 = (char *)&ntbytesc; 231*4882a593Smuzhiyun@@ -4627,8 +4627,8 @@ 232*4882a593Smuzhiyun uint32_t tmp; 233*4882a593Smuzhiyun 234*4882a593Smuzhiyun first_read = 0; 235*4882a593Smuzhiyun- bcopy(buf + 24, &nretrans, 4); 236*4882a593Smuzhiyun- bcopy(buf + 28, &tmp, 4); 237*4882a593Smuzhiyun+ memcpy(&nretrans, buf + 24, 4); 238*4882a593Smuzhiyun+ memcpy(&tmp, buf + 28, 4); 239*4882a593Smuzhiyun if (tmp == 0x5254524Eu) { 240*4882a593Smuzhiyun /* "RTRN" */ 241*4882a593Smuzhiyun retransinfo = 1; 242*4882a593Smuzhiyun@@ -4661,7 +4661,7 @@ 243*4882a593Smuzhiyun } 244*4882a593Smuzhiyun if (read_retrans) { 245*4882a593Smuzhiyun if (!need_swap) 246*4882a593Smuzhiyun- bcopy(buf + 24, &nretrans, 247*4882a593Smuzhiyun+ memcpy(&nretrans, buf + 24, 248*4882a593Smuzhiyun 4); 249*4882a593Smuzhiyun else { 250*4882a593Smuzhiyun cp1 = (char *)&nretrans; 251*4882a593Smuzhiyun@@ -5327,10 +5327,10 @@ 252*4882a593Smuzhiyun itimer.it_interval.tv_usec = 0; 253*4882a593Smuzhiyun setitimer(ITIMER_REAL, &itimer, 0); 254*4882a593Smuzhiyun signal(SIGALRM, SIG_DFL); 255*4882a593Smuzhiyun- bzero((char *)&frominet, sizeof(frominet)); 256*4882a593Smuzhiyun- bzero((char *)&clientaddr, sizeof(clientaddr)); 257*4882a593Smuzhiyun+ memset((char *)&frominet, 0, sizeof(frominet)); 258*4882a593Smuzhiyun+ memset((char *)&clientaddr, 0, sizeof(clientaddr)); 259*4882a593Smuzhiyun #ifdef AF_INET6 260*4882a593Smuzhiyun- bzero((char *)&clientaddr6, sizeof(clientaddr)); 261*4882a593Smuzhiyun+ memset((char *)&clientaddr6, 0, sizeof(clientaddr)); 262*4882a593Smuzhiyun clientscope6 = 0; 263*4882a593Smuzhiyun #endif 264*4882a593Smuzhiyun cput = 0.000001; 265