Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-RT-Original-Encoding: iso-8859-1 Content-Length: 2545 cvs diff: Diffing . Index: lsh_pwd.c =================================================================== RCS file: /cvs/pismere/pismere/athena/auth/leash/leashdll/lsh_pwd.c,v retrieving revision 1.46 diff -u -w -r1.46 lsh_pwd.c --- lsh_pwd.c 3 May 2004 21:29:48 -0000 1.46 +++ lsh_pwd.c 8 Jul 2004 00:34:52 -0000 @@ -1305,7 +1305,7 @@ *( (LPLSH_DLGINFO_EX far *)(&lpdi) ) = (LPLSH_DLGINFO_EX)(LPSTR)lParam; if ((lpdi->size != LSH_DLGINFO_EX_V1_SZ && - lpdi->size != sizeof(LSH_DLGINFO_EX)) || + lpdi->size < sizeof(LSH_DLGINFO_EX)) || lpdi->dlgtype != DLGTYPE_PASSWD) { MessageBox(hDialog, "An incorrect initialization data st ructure was provided.", @@ -1314,7 +1314,7 @@ return FALSE; } - if ( lpdi->size == sizeof(LSH_DLGINFO_EX) ) { + if ( lpdi->size >= sizeof(LSH_DLGINFO_EX) ) { lpdi->out.username[0] = 0; lpdi->out.realm[0] = 0; } @@ -1752,7 +1752,7 @@ Leash_set_default_noaddresses(noaddresses); } - if ( lpdi->size == sizeof(LSH_DLGINFO_EX) ) { + if ( lpdi->size >= sizeof(LSH_DLGINFO_EX) ) { strncpy(lpdi->out.username, username, LEASH_USERNAME_SZ); lpdi->out.username[LEASH_USERNAME_SZ-1] = 0; strncpy(lpdi->out.realm, realm, LEASH_REALM_SZ); @@ -1814,7 +1814,7 @@ *( (LPLSH_DLGINFO_EX far *)(&lpdi) ) = (LPLSH_DLGINFO_EX)(LPSTR)lParam; - if ((lpdi->size != sizeof(LSH_DLGINFO_EX) && + if ((lpdi->size < sizeof(LSH_DLGINFO_EX) && lpdi->size != LSH_DLGINFO_EX_V1_SZ) || lpdi->dlgtype != DLGTYPE_CHPASSWD) { @@ -1824,7 +1824,7 @@ return FALSE; } - if ( lpdi->size == sizeof(LSH_DLGINFO_EX) ) { + if ( lpdi->size >= sizeof(LSH_DLGINFO_EX) ) { lpdi->out.username[0] = 0; lpdi->out.realm[0] = 0; } @@ -2105,7 +2105,7 @@ return TRUE; } - if ( lpdi->size == sizeof(LSH_DLGINFO_EX) ) { + if ( lpdi->size >= sizeof(LSH_DLGINFO_EX) ) { strncpy(lpdi->out.username, username, LEASH_USERNAME_SZ); lpdi->out.username[LEASH_USERNAME_SZ-1] = 0; strncpy(lpdi->out.realm, realm, LEASH_REALM_SZ);