-
Notifications
You must be signed in to change notification settings - Fork 10
/
TODO
53 lines (37 loc) · 1.89 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
TODOs, in random order:
=======================
- REGISTER: updatinf the registration table
currently done upon passing an REGISTER request through, independent of
the outcome of the registration, the registration entry will be put into
the table.
IF a client now tries to register a non-existent number, a fake entry ends
up in the table and may mess things up.
Solution: The lifetime of a REGISTER should be set at receiving the successful
REGISTER Response - before the successful response (at least initially) the
entry should be regarded as invalid.
1)
REGISTER request only gives 5 seconds registration time
unsuccessful REGISTER response does nothing (clock ticking)
successful REGISTER response gives full registration time
-> this reduces the window of opportunity
May want to do further: introduce negative grace time that makes REGISTER
dialog mapping work, but is ignored for all other methods
-> marking records as inactive upon -10 seconds (#define REGISTRATION_GRACE)
-> for REGISTER dialogs, have match if active && urlmatch
-> for all other dialogs, have match if active && expiration>0 && urlmatch
- check via loop and private IP addresses
can comment be used to store a unique ID in there?
- multiple inbound interfaces - do I need to be aware of inbound at all?
- Documentation (yeah, yeah...)
- general security issues
- security tests for received SIP messages (function securitycheck)
- automagically create a proper config file during install
- get_ip_by_host: reduce DNS timeouts (seems to be a more complex problem...)
- via loop detection: send 482 error code
- feature: don't bind to 0.0.0.0 address, but only to inbound/outbound IF's
(defined by IFNAME)
RFC3261 non-compliance:
- Record-Route header handling
- OpenBSD: Warning for redefinition of MACROS
- remove URLMAP_SIZE and RTPPROXY_SIZE constants, make them configurable
at runtime.