diff options
Diffstat (limited to 'src/engine-g13.c')
| -rw-r--r-- | src/engine-g13.c | 10 | 
1 files changed, 4 insertions, 6 deletions
| diff --git a/src/engine-g13.c b/src/engine-g13.c index a9717eec..4a7b75c5 100644 --- a/src/engine-g13.c +++ b/src/engine-g13.c @@ -286,12 +286,10 @@ g13_new (void **engine, const char *file_name, const char *home_dir)        int rc;        rc = ttyname_r (1, dft_ttyname, sizeof (dft_ttyname)); -      if (rc) -	{ -	  err = gpg_error_from_errno (rc); -	  goto leave; -	} -      else + +      /* Even though isatty() returns 1, ttyname_r() may fail in many +	 ways, e.g., when /dev/pts is not accessible under chroot.  */ +      if (!rc)  	{  	  if (asprintf (&optstr, "OPTION ttyname=%s", dft_ttyname) < 0)  	    { | 
