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>