summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
Diffstat (limited to 'source3')
-rw-r--r--source3/include/safe_string.h5
-rw-r--r--source3/lib/hmacmd5.c11
-rw-r--r--source3/libsmb/clidgram.c2
-rw-r--r--source3/libsmb/libsmbclient.c4
4 files changed, 13 insertions, 9 deletions
diff --git a/source3/include/safe_string.h b/source3/include/safe_string.h
index 487174dec3..1ee97833c5 100644
--- a/source3/include/safe_string.h
+++ b/source3/include/safe_string.h
@@ -26,6 +26,11 @@
/* Some macros to ensure people don't use buffer overflow vulnerable string
functions. */
+#ifdef bcopy
+#undef bcopy
+#endif /* bcopy */
+#define bcopy(src,dest,size) __ERROR__XX__NEVER_USE_BCOPY___;
+
#ifdef strcpy
#undef strcpy
#endif /* strcpy */
diff --git a/source3/lib/hmacmd5.c b/source3/lib/hmacmd5.c
index e4a5995e11..f436fd30c0 100644
--- a/source3/lib/hmacmd5.c
+++ b/source3/lib/hmacmd5.c
@@ -49,8 +49,8 @@ void hmac_md5_init_rfc2104(uchar* key, int key_len, HMACMD5Context *ctx)
/* start out by storing key in pads */
ZERO_STRUCT(ctx->k_ipad);
ZERO_STRUCT(ctx->k_opad);
- bcopy( key, ctx->k_ipad, key_len);
- bcopy( key, ctx->k_opad, key_len);
+ memcpy( ctx->k_ipad, key, key_len);
+ memcpy( ctx->k_opad, key, key_len);
/* XOR key with ipad and opad values */
for (i=0; i<64; i++)
@@ -80,12 +80,11 @@ void hmac_md5_init_limK_to_64(const uchar* key, int key_len,
/* start out by storing key in pads */
ZERO_STRUCT(ctx->k_ipad);
ZERO_STRUCT(ctx->k_opad);
- bcopy( key, ctx->k_ipad, key_len);
- bcopy( key, ctx->k_opad, key_len);
+ memcpy( ctx->k_ipad, key, key_len);
+ memcpy( ctx->k_opad, key, key_len);
/* XOR key with ipad and opad values */
- for (i=0; i<64; i++)
- {
+ for (i=0; i<64; i++) {
ctx->k_ipad[i] ^= 0x36;
ctx->k_opad[i] ^= 0x5c;
}
diff --git a/source3/libsmb/clidgram.c b/source3/libsmb/clidgram.c
index 0b07bc2c99..abade68b01 100644
--- a/source3/libsmb/clidgram.c
+++ b/source3/libsmb/clidgram.c
@@ -117,7 +117,7 @@ int cli_get_response(int dgram_sock, BOOL unique, char *mailslot, char *buf, int
/* Copy the data to buffer, respecting sizes ... */
- bcopy(&dgram->data[92], buf, MIN(bufsiz, (dgram->datasize - 92)));
+ memset(buf, &dgram->data[92], MIN(bufsiz, (dgram->datasize - 92)));
}
else
diff --git a/source3/libsmb/libsmbclient.c b/source3/libsmb/libsmbclient.c
index 67e95d09d7..01b4186553 100644
--- a/source3/libsmb/libsmbclient.c
+++ b/source3/libsmb/libsmbclient.c
@@ -1908,7 +1908,7 @@ struct smbc_dirent *smbc_readdir(unsigned int fd)
/* Hmmm, do I even need to copy it? */
- bcopy(dirent, smbc_local_dirent, dirent->dirlen); /* Copy the dirent */
+ memcpy(smbc_local_dirent, dirent, dirent->dirlen); /* Copy the dirent */
dirp = (struct smbc_dirent *)smbc_local_dirent;
@@ -2000,7 +2000,7 @@ int smbc_getdents(unsigned int fd, struct smbc_dirent *dirp, int count)
dirent = dir->dirent;
- bcopy(dirent, ndir, reqd); /* Copy the data in ... */
+ memcpy(ndir, dirent, reqd); /* Copy the data in ... */
((struct smbc_dirent *)ndir)->comment =
(char *)(&((struct smbc_dirent *)ndir)->name + dirent->namelen + 1);