<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Thanks, the first approach seems to work fine for me.</p>
    <p>- Falko<br>
    </p>
    <div class="moz-cite-prefix">Am 17.01.24 um 17:56 schrieb Werner
      Koch:<br>
    </div>
    <blockquote type="cite" cite="mid:87r0ifnbjp.fsf@jacob.g10code.de">
      <pre class="moz-quote-pre" wrap="">On Wed, 17 Jan 2024 14:01, Falko Strenzke said:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">I would like to run my development version of GPG-agent under valgrind. As I
understand it, for that purpose I have to run it in the foreground, i.e. in
server mode. However, whenever I launch it as
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
No, that will not work for you.  I recommend this:

  cd /my/test/directory
  GNUPGHOME=`pwd` gpg-agent --daemon /bin/sh

This way you can easily start gpg-agent via valgrind.  Instead of
running a shell directly you may also use a script instead of /bin/sh:

--8<---------------cut here---------------start------------->8---
#!/bin/sh

SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
export SSH_AUTH_SOCK
cat >setup-tests.ini <<'EOF'
PS1="$(echo "$PS1" | sed 's,\\\$ $,(GnuPGTest)\\\$ ,')"
export HISTCONTROL=ignoreboth
export HISTFILE=$(pwd)/.bash_history
EOF
exec bash --init-file setup-tests.ini
--8<---------------cut here---------------end--------------->8---

which gives you a dedicated prompt so that you can easily see that you
are in a test environment.

For logging put "log-file socket://" into common.conf and 
run

  watchgnupg --time-only --homedir /my/test/directory

in another terminal.  Add --force to take over the logging socket.
Useful debug options for gpg-agent.conf are "debug ipc".  Use
"gpg-agent --debug help" to get a list of all debug options.


Salam-Shalom,

   Werner

</pre>
    </blockquote>
    <div class="moz-signature">-- <br>
      <!-- MTG AG HTML signature v.1.0, 2021-02-12 - Author: Andreas Cholet -->
      <p style="line-height: 1.5;"><font face="Arial"><span
            style="font-size: small; color: rgb(93, 93, 95);">
            <strong>MTG AG</strong><br>
            Dr. Falko Strenzke<br>
            Executive System Architect<br>
            <!--up to here--> </span></font></p>
      <font face="Arial">
        <p>
          <span style="font-size: small; color: rgb(93, 93, 95);">
            <!--personalize--><span
              style="display:inline-block;width:4em">Phone: </span>+49
            6151 8000 24<br>
            <!--personalize--><span
              style="display:inline-block;width:4em">E-Mail: </span><a class="moz-txt-link-abbreviated" href="mailto:falko.strenzke@mtg.de">falko.strenzke@mtg.de</a><br>
            <span style="display:inline-block;width:4em">Web: </span><a
              href="https://www.mtg.de" title="MTG AG Internet"
              target="_blank">mtg.de</a><br>
          </span></p>
        <p><font face="Arial"><span
              style="font-size: x-small; color: rgb(93, 93, 95);">MTG AG
              - Dolivostr. 11 - 64293 Darmstadt, Germany<br>
              Commercial register: HRB 8901<br>
              Register Court: Amtsgericht Darmstadt<br>
              Management Board: Jürgen Ruf (CEO), Tamer Kemeröz<br>
              Chairman of the Supervisory Board: Dr. Thomas Milde<br>
              <br>
              This email may contain confidential and/or privileged
              information.
              If you are not the correct recipient or have received this
              email in error,
              <br>
              please inform the sender immediately and delete this
              email.Unauthorised copying or distribution of this email
              is not permitted.<br>
              <br>
              Data protection information: <a
                href="https://www.mtg.de/en/privacy-policy"
                title="MTG Privacy policy" target="_blank">Privacy
                policy</a>
            </span></font></p>
      </font></div>
  </body>
</html>