So I'm trying to write a program that will scan the computers on my network for the song databases, and run some sort of statistical analysis, just for fun i guess - partially to learn the DAAP protocol. However, I think i'm missing something:
It seems as if when you send a /login request, you should get a session id that you then append to the next request, such as daap://server/databases?session-id=<sid> to be "authenticated".
However, this is the response I get from a /login:
0x6d6c6f67 => mlog
0x00000018 => length of the response (24 bytes)
0x6d737474 => mstt
0x00000004 => length of the mstt chunk (4 bytes)
0x000000c8 => mstt content (status, 200 in decimal, means 'OK')
0x6d6c6964 => mlid
0x00000004 => length of the mlid chunk (4 bytes)
0x00007335 => mlid content ( big-endian, 29493 in decimal)
The docs you're linked to does not say how you pass the session id back to server, but if you're sure it should be passed as get param session-id then try:
daap://server/databases?session-id=29493