diff options
author | Jeremy Allison <jra@samba.org> | 2004-11-10 19:34:50 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:53:12 -0500 |
commit | 44132c39ecbf055b897b1aa7bfca4eb1731badbf (patch) | |
tree | f5a0e84fee131fb8af91461e8c9ee9db5ff2dc29 /source | |
parent | da4117841db731da8f1b7fe7c2524e9d4d60f09a (diff) | |
download | samba-44132c39ecbf055b897b1aa7bfca4eb1731badbf.tar.gz samba-44132c39ecbf055b897b1aa7bfca4eb1731badbf.tar.xz samba-44132c39ecbf055b897b1aa7bfca4eb1731badbf.zip |
r3663: Fix too tight checking of incoming secondary trans2 requests.
Found by Stefan Esser <s.esser@e-matters.de>.
Jeremy.
Diffstat (limited to 'source')
-rw-r--r-- | source/smbd/trans2.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/smbd/trans2.c b/source/smbd/trans2.c index 4c0d5731eb8..ca2c8a060dc 100644 --- a/source/smbd/trans2.c +++ b/source/smbd/trans2.c @@ -4161,7 +4161,7 @@ int reply_trans2(connection_struct *conn, goto bad_param; if (num_params) { - if (param_disp + num_params >= total_params) + if (param_disp + num_params > total_params) goto bad_param; if ((param_disp + num_params < param_disp) || (param_disp + num_params < num_params)) @@ -4177,7 +4177,7 @@ int reply_trans2(connection_struct *conn, memcpy( ¶ms[param_disp], smb_base(inbuf) + param_off, num_params); } if (num_data) { - if (data_disp + num_data >= total_data) + if (data_disp + num_data > total_data) goto bad_param; if ((data_disp + num_data < data_disp) || (data_disp + num_data < num_data)) |