From: Günther Deschner Date: Wed, 2 May 2007 15:44:05 +0000 (+0000) Subject: r22636: Fix logic bug. X-Git-Tag: samba-misc-tags/initial-v3-0-unstable~566 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bfcd10766bcac1d50f7624bbe5a72eca57b5e278;p=thirdparty%2Fsamba.git r22636: Fix logic bug. We certainly don't want to crash winbind on each sucessfull centry_uint{8,16,32,64} read. Jeremy, please check :-) Guenther --- diff --git a/source/nsswitch/winbindd_cache.c b/source/nsswitch/winbindd_cache.c index 47bd872f030..e1fbfe3bc28 100644 --- a/source/nsswitch/winbindd_cache.c +++ b/source/nsswitch/winbindd_cache.c @@ -221,7 +221,7 @@ static uint32 centry_uint32(struct cache_entry *centry) { uint32 ret; - if (centry_check_bytes(centry, 4)) { + if (!centry_check_bytes(centry, 4)) { smb_panic_fn("centry_uint32"); return (uint32)-1; } @@ -236,7 +236,7 @@ static uint32 centry_uint32(struct cache_entry *centry) static uint16 centry_uint16(struct cache_entry *centry) { uint16 ret; - if (centry_check_bytes(centry, 2)) { + if (!centry_check_bytes(centry, 2)) { smb_panic_fn("centry_uint16"); return (uint16)-1; } @@ -251,7 +251,7 @@ static uint16 centry_uint16(struct cache_entry *centry) static uint8 centry_uint8(struct cache_entry *centry) { uint8 ret; - if (centry_check_bytes(centry, 1)) { + if (!centry_check_bytes(centry, 1)) { smb_panic_fn("centry_uint8"); return (uint8)-1; } @@ -266,7 +266,7 @@ static uint8 centry_uint8(struct cache_entry *centry) static NTTIME centry_nttime(struct cache_entry *centry) { NTTIME ret; - if (centry_check_bytes(centry, 8)) { + if (!centry_check_bytes(centry, 8)) { smb_panic_fn("centry_nttime"); return (NTTIME)-1; } @@ -300,7 +300,7 @@ static char *centry_string(struct cache_entry *centry, TALLOC_CTX *mem_ctx) return NULL; } - if (centry_check_bytes(centry, (size_t)len)) { + if (!centry_check_bytes(centry, (size_t)len)) { smb_panic_fn("centry_string"); return NULL; } @@ -332,7 +332,7 @@ static char *centry_hash16(struct cache_entry *centry, TALLOC_CTX *mem_ctx) return NULL; } - if (centry_check_bytes(centry, 16)) { + if (!centry_check_bytes(centry, 16)) { return NULL; }