[PATCH] refactor correct_password.c to avoid one #if

walter harms wharms at bfs.de
Wed Aug 1 07:15:34 UTC 2012



Am 31.07.2012 22:10, schrieb Tito:
> On Tuesday 31 July 2012 18:08:15 walter harms wrote:
>> compile tested,
>> refactor correct_password.c to avoid one #if
>>
>> Signed-off-by: wharms <wharms at bfs.de>
>> ---
>>  libbb/correct_password.c |    9 +++------
>>  1 files changed, 3 insertions(+), 6 deletions(-)
>>
>> diff --git a/libbb/correct_password.c b/libbb/correct_password.c
>> index 6301589..7cabd33 100644
>> --- a/libbb/correct_password.c
>> +++ b/libbb/correct_password.c
>> @@ -41,12 +41,6 @@ int FAST_FUNC correct_password(const struct passwd *pw)
>>  	char *unencrypted, *encrypted;
>>  	const char *correct;
>>  	int r;
>> -#if ENABLE_FEATURE_SHADOWPASSWDS
>> -	/* Using _r function to avoid pulling in static buffers */
>> -	struct spwd spw;
>> -	char buffer[256];
>> -#endif
>> -
>>  	/* fake salt. crypt() can choke otherwise. */
>>  	correct = "aa";
>>  	if (!pw) {
>> @@ -55,7 +49,10 @@ int FAST_FUNC correct_password(const struct passwd *pw)
>>  	}
>>  	correct = pw->pw_passwd;
>>  #if ENABLE_FEATURE_SHADOWPASSWDS
>> +	/* Using _r function to avoid pulling in static buffers */
>>  	if ((correct[0] == 'x' || correct[0] == '*') && !correct[1]) {
>> +		struct spwd spw;
>> +		char buffer[256];
>>  		/* getspnam_r may return 0 yet set result to NULL.
>>  		 * At least glibc 2.4 does this. Be extra paranoid here. */
>>  		struct spwd *result = NULL;
>>
> 
> Hi,
> I personally I'm not for mixing variable declarations and code,
> I admit tough that in this case as it are just a few lines it could be ok.
> 

me too,
actualy i was thinking to move that all into a special function but ....
maybe you will ?

re,
 wh




More information about the busybox mailing list