You can send more than one TestDDARequest message for different directories if necessary : the node handles them per socket, meaning that if you close/reopen the socket you have to re-do it. Each TestDDARequest message will be obsoleted if a new one is received for the same directory.
TestDDARequest Directory=/tmp/ WantReadDirectory=true WantWriteDirectory=true EndMessage
|Directory||Arbitrary string, on one line||yes||The directory files you want to access reside in|
|WantReadDirectory||[true,false]||no||false||Do you plan to do any PUT operation? Be aware that the node won't allow you to do it unless it has write access to the given directory. See the note above|
|WantWriteDirectory||[true,false]||no||false||Do you plan to do any GET operation?|
See https://emu.freenetproject.org/pipermail/devl/2007-April/026666.html and https://emu.freenetproject.org/pipermail/devl/2007-April/026672.html for implementation details.