On Sep 9, 2010, at 5:18 PM, Martin Sucha wrote:

> Hi All,
> 
> I believe there is a bug in function netretr_proxy in
> filters/common/connect.c, where unlink call is made to remove a
> temporary file in case of error. There are calls to perror that should
> output error message of the outer file operation. However, the call to
> unlink may reset errno. See patch below:

Thanks. I'll get this committed.

andrew


> diff --git a/filters/common/connect.c b/filters/common/connect.c
> index 0e92cae..0139e0e 100755
> --- a/filters/common/connect.c
> +++ b/filters/common/connect.c
> @@ -286,10 +286,10 @@ netretr_proxy( char *scookie, struct sinfo *si,
> SNET *sn, char *proxydb,
>     }
> 
>     if (( tmpfile = fdopen( fd, "w" )) == NULL ) {
> +        perror( tmppath );
>         if ( unlink( tmppath ) != 0 ) {
>             perror( tmppath );
>         }
> -        perror( tmppath );
>         return( COSIGN_ERROR );
>     }
> 
> @@ -346,18 +346,18 @@ netretr_proxy( char *scookie, struct sinfo *si,
> SNET *sn, char *proxydb,
>     } while ( line[ 3 ] == '-' );
> 
>     if ( fclose ( tmpfile ) != 0 ) {
> +        perror( tmppath );
>         if ( unlink( tmppath ) != 0 ) {
>             perror( tmppath );
>         }
> -        perror( tmppath );
>         return( COSIGN_ERROR );
>     }
> 
>     if ( link( tmppath, path ) != 0 ) {
> +        perror( tmppath );
>         if ( unlink( tmppath ) != 0 ) {
>             perror( tmppath );
>         }
> -        perror( tmppath );
>         return( COSIGN_ERROR );
>     }
> 
> Regards,
> Martin Sucha
> 
> 
> ------------------------------------------------------------------------------
> Automate Storage Tiering Simply
> Optimize IT performance and efficiency through flexible, powerful, 
> automated storage tiering capabilities. View this brief to learn how
> you can reduce costs and improve performance. 
> http://p.sf.net/sfu/dell-sfdev2dev
> _______________________________________________
> Cosign-discuss mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/cosign-discuss
> 
> !DSPAM:4c89572143431385515324!
> 
> 
> 


------------------------------------------------------------------------------
Automate Storage Tiering Simply
Optimize IT performance and efficiency through flexible, powerful, 
automated storage tiering capabilities. View this brief to learn how
you can reduce costs and improve performance. 
http://p.sf.net/sfu/dell-sfdev2dev
_______________________________________________
Cosign-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cosign-discuss

Reply via email to