From 7682f61e1003c6e43ba46013eb45248d676c4476 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Wed, 26 Oct 2011 14:23:48 +0200 Subject: s3:include: implement trans_oob() as wrapper to smb_buffer_oob() metze --- source3/include/proto.h | 1 - source3/include/smb_macros.h | 3 +++ source3/lib/util.c | 19 ------------------- 3 files changed, 3 insertions(+), 20 deletions(-) (limited to 'source3') diff --git a/source3/include/proto.h b/source3/include/proto.h index 3002fc33da..6ff2854ca2 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -567,7 +567,6 @@ struct server_id interpret_pid(const char *pid_string); char *procid_str_static(const struct server_id *pid); bool procid_valid(const struct server_id *pid); bool procid_is_local(const struct server_id *pid); -bool trans_oob(uint32_t bufsize, uint32_t offset, uint32_t length); bool is_offset_safe(const char *buf_base, size_t buf_len, char *ptr, size_t off); char *get_safe_ptr(const char *buf_base, size_t buf_len, char *ptr, size_t off); char *get_safe_str_ptr(const char *buf_base, size_t buf_len, char *ptr, size_t off); diff --git a/source3/include/smb_macros.h b/source3/include/smb_macros.h index 79d2f6833d..ef4b9bfccd 100644 --- a/source3/include/smb_macros.h +++ b/source3/include/smb_macros.h @@ -301,4 +301,7 @@ extern const char toupper_ascii_fast_table[]; #define toupper_ascii_fast(c) toupper_ascii_fast_table[(unsigned int)(c)]; #endif +#define trans_oob(bufsize, offset, length) \ + smb_buffer_oob(bufsize, offset, length) + #endif /* _SMB_MACROS_H */ diff --git a/source3/lib/util.c b/source3/lib/util.c index 8157c0ffd0..f547ec2a56 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -2015,25 +2015,6 @@ bool procid_is_local(const struct server_id *pid) return pid->vnn == my_vnn; } -/**************************************************************** - Check if offset/length fit into bufsize. Should probably be - merged with is_offset_safe, but this would require a rewrite - of lanman.c. Later :-) -****************************************************************/ - -bool trans_oob(uint32_t bufsize, uint32_t offset, uint32_t length) -{ - if ((offset + length < offset) || (offset + length < length)) { - /* wrap */ - return true; - } - if ((offset > bufsize) || (offset + length > bufsize)) { - /* overflow */ - return true; - } - return false; -} - /**************************************************************** Check if an offset into a buffer is safe. If this returns True it's safe to indirect into the byte at -- cgit