From: Justus Winter Date: Mon, 27 Mar 2017 14:14:20 +0000 (+0200) Subject: common: Fix connecting to the agent. X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=45bd1e8b54741f1437cddf7203036cf251125e67;p=gnupg2.git common: Fix connecting to the agent. * common/homedir.c (_gnupg_socketdir_internal): Fix error handling. -- Prior to 26086b36 the non-existance of the socket directory was considered an error if a non-default home directory is used. Since 26086b36 we now create the directory on demand, but the function still returned the fallback path. This made the agent bind the socket in the socket directory, and the client trying to connect to the socket in the home directory. Fixes-commit: 26086b362ff47d21b1abefaf674a6464bf0a8921 Signed-off-by: Justus Winter (cherry picked from commit caf00915532e6e8e509738962964edcd14fb0654) Gbp-Pq: Name 0056-common-Fix-connecting-to-the-agent.patch --- diff --git a/common/homedir.c b/common/homedir.c index c41cbdc..4571aac 100644 --- a/common/homedir.c +++ b/common/homedir.c @@ -586,6 +586,8 @@ _gnupg_socketdir_internal (int skip_checks, unsigned *r_info) else *r_info |= 64; /* Subdir does not exist. */ } + else + goto leave; /* Success! */ } else *r_info |= 64; /* Subdir does not exist. */