¿Cómo iniciar bajo demanda cuando se especifica el puerto como parámetro?

¿Cómo iniciar bajo demanda cuando se especifica el puerto como parámetro?

Tengo un programa que quiero ejecutar bajo demanda launchdejecutando el siguiente comando:

/usr/local/bin/godoc -http=:6060

Este programa inicia una aplicación HTTP que escucha en el puerto designado 6060.

En mi lista de propiedades tengo

<key>Sockets</key>
<dict>
    <key>default</key>
    <dict>
        <key>SockNodeName</key>
        <string>localhost</string>
        <key>SockServiceName</key>
        <integer>6060</integer>
        <key>SockPassive</key>
        <true/>
    </dict>
</dict>

Sin embargo, cuando inicio el demonio, el resultado de la aplicación en stderr es:

ListenAndServe :6060: listen tcp :6060: bind: address already in use

Según tengo entendido, launchdcrea el socket y lo pasa a la aplicación, pero esta aplicación está intentando crear el socket nuevamente, por lo que falla.

¿Qué opciones tengo para ejecutar esto bajo launchddemanda?

información relacionada