mirror of
https://github.com/PowerShell/openssh-portable.git
synced 2025-07-31 01:35:11 +02:00
- (djm) [bsd-asprintf.c] Better test for bad vsnprintf lengths; ok dtucker@
This commit is contained in:
parent
143c2ef1ce
commit
be6db83462
@ -2,6 +2,7 @@
|
|||||||
- (djm) [auth.c] Fix NULL pointer dereference in fakepw(). Crash would
|
- (djm) [auth.c] Fix NULL pointer dereference in fakepw(). Crash would
|
||||||
occur if the server did not have the privsep user and an invalid user
|
occur if the server did not have the privsep user and an invalid user
|
||||||
tried to login and both privsep and krb5 auth are disabled; ok dtucker@
|
tried to login and both privsep and krb5 auth are disabled; ok dtucker@
|
||||||
|
- (djm) [bsd-asprintf.c] Better test for bad vsnprintf lengths; ok dtucker@
|
||||||
|
|
||||||
20061108
|
20061108
|
||||||
- (dtucker) OpenBSD CVS Sync
|
- (dtucker) OpenBSD CVS Sync
|
||||||
@ -2616,4 +2617,4 @@
|
|||||||
OpenServer 6 and add osr5bigcrypt support so when someone migrates
|
OpenServer 6 and add osr5bigcrypt support so when someone migrates
|
||||||
passwords between UnixWare and OpenServer they will still work. OK dtucker@
|
passwords between UnixWare and OpenServer they will still work. OK dtucker@
|
||||||
|
|
||||||
$Id: ChangeLog,v 1.4590 2006/12/04 22:08:54 djm Exp $
|
$Id: ChangeLog,v 1.4591 2006/12/05 11:58:09 djm Exp $
|
||||||
|
@ -39,7 +39,8 @@
|
|||||||
|
|
||||||
#define INIT_SZ 128
|
#define INIT_SZ 128
|
||||||
|
|
||||||
int vasprintf(char **str, const char *fmt, va_list ap)
|
int
|
||||||
|
vasprintf(char **str, const char *fmt, va_list ap)
|
||||||
{
|
{
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
va_list ap2;
|
va_list ap2;
|
||||||
@ -53,7 +54,7 @@ int vasprintf(char **str, const char *fmt, va_list ap)
|
|||||||
ret = vsnprintf(string, INIT_SZ, fmt, ap2);
|
ret = vsnprintf(string, INIT_SZ, fmt, ap2);
|
||||||
if (ret >= 0 && ret < INIT_SZ) { /* succeeded with initial alloc */
|
if (ret >= 0 && ret < INIT_SZ) { /* succeeded with initial alloc */
|
||||||
*str = string;
|
*str = string;
|
||||||
} else if (ret == INT_MAX) { /* shouldn't happen */
|
} else if (ret == INT_MAX || ret < 0) { /* Bad length */
|
||||||
goto fail;
|
goto fail;
|
||||||
} else { /* bigger than initial, realloc allowing for nul */
|
} else { /* bigger than initial, realloc allowing for nul */
|
||||||
len = (size_t)ret + 1;
|
len = (size_t)ret + 1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user