[PATCH] Replace bcopy() calls with equivalent memmove() calls

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



As annotated in the bcopy(3) man page, bcopy() was marked as LEGACY in
POSIX.1-2001 and removed in POSIX.1-2008, and should be replaced with
either memcpy() or memmove() calls to copy bytes from one memory region to
another.  The attached patch replaces all bcopy() calls in libtirpc with
equivalent memmove() calls.

Signed-off-by: Joshua Kinard <kumba@xxxxxxxxxx>
---

 src/auth_time.c    |    2 +-
 src/crypt_client.c |    8 ++++----
 src/svc_auth_des.c |    2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/auth_time.c b/src/auth_time.c
index 210d251..5426902 100644
--- a/src/auth_time.c
+++ b/src/auth_time.c
@@ -104,7 +104,7 @@ static int uaddr_to_sockaddr(uaddr, sin)
 	p_bytes[1] = (unsigned char)a[5] & 0x000000FF;
 
 	sin->sin_family = AF_INET; /* always */
-	bcopy((char *)&p_bytes, (char *)&sin->sin_port, 2);
+	memmove((char *)&sin->sin_port, (char *)&p_bytes, 2);
 
 	return (0);
 }
diff --git a/src/crypt_client.c b/src/crypt_client.c
index f393926..b8c5767 100644
--- a/src/crypt_client.c
+++ b/src/crypt_client.c
@@ -75,8 +75,8 @@ _des_crypt_call(buf, len, dparms)
 	des_crypt_1_arg.desbuf.desbuf_val = buf;
 	des_crypt_1_arg.des_dir = dparms->des_dir;
 	des_crypt_1_arg.des_mode = dparms->des_mode;
-	bcopy(dparms->des_ivec, des_crypt_1_arg.des_ivec, 8);
-	bcopy(dparms->des_key, des_crypt_1_arg.des_key, 8);
+	memmove(des_crypt_1_arg.des_ivec, dparms->des_ivec, 8);
+	memmove(des_crypt_1_arg.des_key, dparms->des_key, 8);
 
 	result_1 = des_crypt_1(&des_crypt_1_arg, clnt);
 	if (result_1 == (desresp *) NULL) {
@@ -88,8 +88,8 @@ _des_crypt_call(buf, len, dparms)
 
 	if (result_1->stat == DESERR_NONE ||
 	    result_1->stat == DESERR_NOHWDEVICE) {
-		bcopy(result_1->desbuf.desbuf_val, buf, len);
-		bcopy(result_1->des_ivec, dparms->des_ivec, 8);
+		memmove(buf, result_1->desbuf.desbuf_val, len);
+		memmove(dparms->des_ivec, result_1->des_ivec, 8);
 	}
 
 	clnt_freeres(clnt, (xdrproc_t)xdr_desresp, result_1);
diff --git a/src/svc_auth_des.c b/src/svc_auth_des.c
index 64a7682..5813c5a 100644
--- a/src/svc_auth_des.c
+++ b/src/svc_auth_des.c
@@ -145,7 +145,7 @@ _svcauth_des(rqst, msg)
 			return (AUTH_BADCRED);
 		}
 		cred->adc_fullname.name = area->area_netname;
-		bcopy((char *)ixdr, cred->adc_fullname.name, 
+		memmove(cred->adc_fullname.name, (char *)ixdr,
 			(u_int)namelen);
 		cred->adc_fullname.name[namelen] = 0;
 		ixdr += (RNDUP(namelen) / BYTES_PER_XDR_UNIT);

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux