MCPcopy Create free account
hub / github.com/secdev/scapy / RTSPResponse

Class RTSPResponse

scapy/contrib/rtsp.py:93–135  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

91
92
93class RTSPResponse(_HTTPContent):
94 name = "RTSP Response"
95 fields_desc = (
96 [
97 # First line
98 _HTTPHeaderField("Version", "RTSP/1.1"),
99 _HTTPHeaderField("Status_Code", "200"),
100 _HTTPHeaderField("Reason_Phrase", "OK"),
101 # Headers
102 ]
103 + (
104 _generate_headers(
105 RTSP_RESP_HEADERS,
106 )
107 )
108 + [
109 _HTTPHeaderField("Unknown-Headers", None),
110 ]
111 )
112
113 def answers(self, other):
114 return RTSPRequest in other
115
116 def do_dissect(self, s):
117 first_line, body = _dissect_headers(self, s)
118 try:
119 Version, Status, Reason = re.split(rb"\s+", first_line, maxsplit=2)
120 self.setfieldval("Version", Version)
121 self.setfieldval("Status_Code", Status)
122 self.setfieldval("Reason_Phrase", Reason)
123 except ValueError:
124 pass
125 if body:
126 self.raw_packet_cache = s[: -len(body)]
127 else:
128 self.raw_packet_cache = s
129 return body
130
131 def mysummary(self):
132 return self.sprintf(
133 "%RTSPResponse.Version% %RTSPResponse.Status_Code% "
134 "%RTSPResponse.Reason_Phrase%"
135 )
136
137
138class RTSP(HTTP):

Callers

nothing calls this directly

Calls 2

_HTTPHeaderFieldClass · 0.90
_generate_headersFunction · 0.90

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…