Skip to content

RTSP selects Basic Auth when Basic and Digest are supported #1835

Closed
@adyanth

Description

@adyanth

** Before You Submit**

  • [ X ] I checked that my issue isn't already filed: Search open issues.
  • [ X ] I checked the relevant camera/device and/or plugin Log in the Management Console for errors or warnings that may help identify and resolve the issue myself.

Describe the bug
RTSP tries to authenticate with Basic Auth when both Basic and Digest is enabled on the camera

To Reproduce
Steps to reproduce the behavior:

  1. Update Tapo C210 to latest version
  2. Try adding it as a ONVIF/RTSP camera
  3. See error failing to authenticate

Expected behavior
The camera to work.

Screenshots
N/A

Logs

[Rebroadcast Plugin]: mainStream prebuffer session started
[Rebroadcast Plugin]: mainStream prebuffer session starting
stream url rtsp://10.10.69.38:554/stream1
[Rebroadcast Plugin]: rtsp outgoing message
[Rebroadcast Plugin]:  OPTIONS rtsp://10.10.69.38:554/stream1 RTSP/1.0
[Rebroadcast Plugin]: CSeq: 0
[Rebroadcast Plugin]: User-Agent: Scrypted
[Rebroadcast Plugin]: 
[Rebroadcast Plugin]: rtsp incoming message
[Rebroadcast Plugin]:  RTSP/1.0 200 OK
[Rebroadcast Plugin]: CSeq: 0
[Rebroadcast Plugin]: Date: Wed, Nov 15 2023 17:03:29 GMT
[Rebroadcast Plugin]: Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, GET_PARAMETER, SET_PARAMETER
[Rebroadcast Plugin]: 
[Rebroadcast Plugin]: rtsp outgoing message
[Rebroadcast Plugin]:  DESCRIBE rtsp://10.10.69.38:554/stream1 RTSP/1.0
[Rebroadcast Plugin]: Accept: application/sdp
[Rebroadcast Plugin]: CSeq: 1
[Rebroadcast Plugin]: User-Agent: Scrypted
[Rebroadcast Plugin]: 
[Rebroadcast Plugin]: rtsp incoming message
[Rebroadcast Plugin]:  RTSP/1.0 401 Unauthorized
[Rebroadcast Plugin]: CSeq: 1
[Rebroadcast Plugin]: Date: Wed, Nov 15 2023 17:03:29 GMT
[Rebroadcast Plugin]: WWW-Authenticate: Basic realm="TP-Link IP-Camera"
[Rebroadcast Plugin]: WWW-Authenticate: Digest realm="TP-Link IP-Camera", nonce="REDACTED"
[Rebroadcast Plugin]: 
[Rebroadcast Plugin]: rtsp outgoing message
### HERE: Why are we sending a DESCRIBE with Basic?
[Rebroadcast Plugin]:  DESCRIBE rtsp://10.10.69.38:554/stream1 RTSP/1.0
[Rebroadcast Plugin]: Accept: application/sdp
[Rebroadcast Plugin]: CSeq: 2
[Rebroadcast Plugin]: User-Agent: Scrypted
[Rebroadcast Plugin]: Authorization: Basic REDACTED
[Rebroadcast Plugin]: 
[Rebroadcast Plugin]: rtsp incoming message
[Rebroadcast Plugin]:  RTSP/1.0 401 Unauthorized
[Rebroadcast Plugin]: CSeq: 2
[Rebroadcast Plugin]: Date: Wed, Nov 15 2023 17:03:29 GMT
[Rebroadcast Plugin]: WWW-Authenticate: Basic realm="TP-Link IP-Camera"
[Rebroadcast Plugin]: WWW-Authenticate: Digest realm="TP-Link IP-Camera", nonce="REDACTED"
[Rebroadcast Plugin]: 
[Rebroadcast Plugin]: Tapo C210 restarting prebuffer session in 5 seconds
[Rebroadcast Plugin]: mainStream prebuffer session ended with error Error: auth failed
[Rebroadcast Plugin]:     at t.RtspClient.request (/server/volume/plugins/@scrypted/common/src/rtsp-server.ts:766:23)
[Rebroadcast Plugin]:     at process.response (node:internal/process/task_queues:105:5)
[Rebroadcast Plugin]:     at t.RtspClient.sdp [as describe] (/server/volume/plugins/@scrypted/common/src/rtsp-server.ts:801:15)
[Rebroadcast Plugin]:     at session (/server/volume/plugins/@scrypted/prebuffer-mixin/zip/src/rtsp-session.ts:66:13)
[Rebroadcast Plugin]:     at j.startPrebufferSession (/server/volume/plugins/@scrypted/prebuffer-mixin/zip/src/main.ts:587:9)
[Rebroadcast Plugin]: rtsp outgoing message
[Rebroadcast Plugin]:  TEARDOWN rtsp://10.10.69.38:554/stream1 RTSP/1.0
[Rebroadcast Plugin]: CSeq: 3
[Rebroadcast Plugin]: User-Agent: Scrypted
[Rebroadcast Plugin]: Authorization: Basic REDACTED
[Rebroadcast Plugin]: 

Server (please complete the following information):

  • OS: Proxmox LXC
  • Installation Method: Proxmox LXC

Hardware Model (please complete the following information):

  • Device: Tapo C210

Client (please complete the following information, if applicable):

  • Software: Browser

Additional context

  • Tried with VLC to open the RTSP stream, took a pcap, it authenticates successfully with Digest and shows the video stream.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions