[PATCH] make nsswitch and libwbclient thread safe / Coverity findings

Volker Lendecke Volker.Lendecke at SerNet.DE
Fri Nov 9 11:31:39 UTC 2018


On Fri, Nov 09, 2018 at 11:42:15AM +0100, Ralph Wuerthner via samba-technical wrote:
> Hi!
> 
> Volker pointed me to two Coverity findings in stress-nss-libwbclient.c.
> Please see attached patchset to address these findings.

RB+. Another one?

Thanks, Volker

> 
> On 31.10.18 19:50, Jeremy Allison via samba-technical wrote:
> > On Wed, Oct 31, 2018 at 07:46:26PM +0100, Andreas Schneider via samba-technical wrote:
> > > On Monday, 29 October 2018 18:29:21 CET Jeremy Allison wrote:
> > > > On Mon, Oct 29, 2018 at 05:28:37PM +0100, Volker Lendecke via samba-
> > > technical wrote:
> > > > > On Mon, Oct 29, 2018 at 09:20:57AM -0700, Jeremy Allison wrote:
> > > > > > Ping for Ralph and Volker.
> > > > > > 
> > > > > > I'd love to get this into master if you both are
> > > > > > happy with it !
> > > > > 
> > > > > Ralph has found that the nss_wrapper needs some fixes. Attached find
> > > > > my patchset with my Reviewed-By: (really just finished). We can't put
> > > > > that into Samba, because the nss_wrapper piece needs to wait for the
> > > > > nss_wrapper team to get to the point where they have enough patches to
> > > > > justify a release. Then we need a patch to upgrade the in-tree
> > > > > nss_wrapper copy, and *then* we can start thinking about putting this
> > > > > into Samba. We will start working on that process asap.
> > > > 
> > > > Ah, the perils of depending on third-party :-).
> > > > 
> > > > Pinging Andreas.... !
> > > 
> > > A new nss_wrapper version is in autobuild. I guess you need to rebase that
> > > patchset once it lands in master and then push it.
> > 
> > Will do, thanks !
> > 
> 
> -- 
> Regards
> 
> Ralph

> From d204f1013650bfd74fa7bbdcf3fe501586db8fce Mon Sep 17 00:00:00 2001
> From: Ralph Wuerthner <ralph.wuerthner at de.ibm.com>
> Date: Fri, 9 Nov 2018 08:58:31 +0100
> Subject: [PATCH 1/2] nsswitch: Fix CID 1441072 Error handling issues
>  (CHECKED_RETURN)
> 
> Signed-off-by: Ralph Wuerthner <ralph.wuerthner at de.ibm.com>
> ---
>  nsswitch/stress-nss-libwbclient.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/nsswitch/stress-nss-libwbclient.c b/nsswitch/stress-nss-libwbclient.c
> index cf85ff3..740ad0e 100644
> --- a/nsswitch/stress-nss-libwbclient.c
> +++ b/nsswitch/stress-nss-libwbclient.c
> @@ -118,7 +118,13 @@ int main(int argc, char *argv[])
>  
>  	state.username = argv[1];
>  	state.timeout = time(NULL) + RUNTIME;
> -	pthread_mutex_init(&state.lock, NULL);
> +	rc = pthread_mutex_init(&state.lock, NULL);
> +	if (rc != 0) {
> +		fprintf(stderr,
> +			"pthread_mutex_init failed: %s\n",
> +			strerror(rc));
> +		exit(1);
> +	}
>  	state.fail = false;
>  	state.nss_loop_count = 0;
>  	state.wbc_loop_count = 0;
> -- 
> 2.7.4
> 
> 
> From 2c140c1876f53ed51ddfbd453df640879c344927 Mon Sep 17 00:00:00 2001
> From: Ralph Wuerthner <ralph.wuerthner at de.ibm.com>
> Date: Fri, 9 Nov 2018 09:01:29 +0100
> Subject: [PATCH 2/2] nsswitch: Fix CID 1441070 Error handling issues
>  (CHECKED_RETURN)
> 
> Signed-off-by: Ralph Wuerthner <ralph.wuerthner at de.ibm.com>
> ---
>  nsswitch/stress-nss-libwbclient.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/nsswitch/stress-nss-libwbclient.c b/nsswitch/stress-nss-libwbclient.c
> index 740ad0e..df1d85c 100644
> --- a/nsswitch/stress-nss-libwbclient.c
> +++ b/nsswitch/stress-nss-libwbclient.c
> @@ -149,7 +149,14 @@ int main(int argc, char *argv[])
>  
>  	/* wait for query threads to terminate */
>  	for (n = 0; n < 2; n++) {
> -		pthread_join(threads[n], NULL);
> +		rc = pthread_join(threads[n], NULL);
> +		if (rc != 0) {
> +			fprintf(stderr,
> +				"joining query thread %i failed: %s\n",
> +				n,
> +				strerror(rc));
> +			exit(1);
> +		}
>  	}
>  
>  	fprintf(state.fail ? stderr: stdout,
> -- 
> 2.7.4
> 


-- 
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.sernet.de, mailto:kontakt at sernet.de



More information about the samba-technical mailing list