Annotation of embedaddon/miniupnpd/minissdpd/README, revision 1.1
1.1 ! misho 1: * MiniSSDPd - SSDP daemon
! 2:
! 3: (c) Thomas Bernard
! 4: http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
! 5: https://github.com/miniupnp/miniupnp/
! 6:
! 7: MiniSSDPd is a daemon that :
! 8: 1 - keeps track of all UPnP devices announcing themselves on the network.
! 9: its database can be queried by local processes using a protocol based on
! 10: a unix socket. That enables local processes to quickly discover UPnP devices
! 11: without broadcasting SSDP message and waiting several seconds for a response.
! 12: 2 - keeps a database of local UPnP devices hosted on the machine and
! 13: answering SSDP searchs on their behalf. It enables to run several UPnP devices,
! 14: like an IGD and a MediaServer, on the same machine.
! 15:
! 16: to build, use GNU Make.
! 17:
! 18:
! 19: * protocol :
! 20:
! 21: Connect to the unix socket.
! 22: Sent request, get response.
! 23: close unix socket connection.
! 24:
! 25: * Request format :
! 26: 1st byte : request type
! 27: 0 - version
! 28: 1 - type
! 29: 2 - USN (unique id)
! 30: 3 - everything
! 31: 4 - submit service (see below)
! 32: 5 - switch connection to notification mode
! 33: n bytes : string length : 1 byte if < 128 else the upper bit indicate that
! 34: one additional byte should be read, etc. (see codelength.h)
! 35: n bytes = string
! 36:
! 37: Response format :
! 38:
! 39: request type 0 (version) :
! 40: n bytes string length
! 41: n bytes = version string
! 42:
! 43: request type 1 / 2 / 3 / 5 :
! 44: 1st byte : number of services/devices, from 0 to 254.
! 45: 255 is a special value, see below
! 46: For each service/device :
! 47: URL :
! 48: n bytes string length
! 49: n bytes = Location string
! 50: ST:
! 51: n bytes string length
! 52: n bytes = type string
! 53: USN:
! 54: n bytes string length
! 55: n bytes = identifier string
! 56:
! 57: if the 1st byte is 255, the format is as follows :
! 58: 1st byte = 255
! 59: 2nd byte = notification type (1=NEW, 2=UPDATE, 3=REMOVE)
! 60: 3rd byte = number of services/devices, from 0 to 255.
! 61:
! 62:
! 63: request type 4 = submit service
! 64: 1st byte = 4
! 65: (k,n) bytes : length and string "ST" (service type)
! 66: (k,n) bytes : length and string "USN"
! 67: (k,n) bytes : length and string "Server"
! 68: (k,n) bytes : length and string "Location"
! 69: No answer
! 70:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>