redone V0.1.2 - silly bug in the registration concept

This commit is contained in:
Thomas Ries
2002-09-07 21:29:45 +00:00
parent bacb775469
commit 9939e41fa5
3 changed files with 36 additions and 11 deletions
+11 -9
View File
@@ -1,17 +1,19 @@
0.1.2
=====
- 7-Sep-2002: Releases version 0.1.2
Experimental RTP proxying feature (using pthreads)
- 26-Aug-2002: Optimized DNS caching
- 7-Sep-2002: - Releases version 0.1.2
- fixed registration concept (SIP Contact header is not
a *must* to be present in every frame)
- Experimental RTP proxying feature (using pthreads)
- 26-Aug-2002: - Optimized DNS caching
0.1.1
=====
- 25-Aug-2002: Released version 0.1.1
can daemonize (detach and run in background)
do some DNS caching
- 24-Aug-2002: Imlemented support for a config file,
obsoletes siproxd_conf.h
- 25-Aug-2002: - Released version 0.1.1
- can daemonize (detach and run in background)
- do some DNS caching
- 24-Aug-2002: - Imlemented support for a config file,
- obsoletes siproxd_conf.h
0.1.0
=====
- 19-Aug-2002: Released version 0.1.0
- 19-Aug-2002: - Released version 0.1.0
+1 -1
View File
@@ -5,7 +5,7 @@ dnl ******************************************************************
dnl
SPD_MAJOR_VERSION=0
SPD_MINOR_VERSION=1
SPD_MICRO_VERSION=3
SPD_MICRO_VERSION=2
SPD_VERSION=$SPD_MAJOR_VERSION.$SPD_MINOR_VERSION.$SPD_MICRO_VERSION
dnl *********************************************************************
+24 -1
View File
@@ -60,7 +60,7 @@ int proxy_request (sip_t *request) {
int sts;
int type;
struct in_addr addr;
contact_t *contact;
// contact_t *contact; /* contact header issue */
url_t *url;
int port;
char *buffer;
@@ -77,12 +77,25 @@ int proxy_request (sip_t *request) {
return 1;
}
#if 0 /* Contact Header Issue */
/* figure out if this is an request comming from the outside
* world to one of our registered clients ('to' == 'masq' URL)
* or if this is a request sent by on e of our registered clients
* ('from' == 'true' URL)
*/
msg_getcontact(request,0,&contact);
/* seen with linphone-0.9.1pre1 w/ user-agent: oSIP/Linphone-0.8.0
no contact header in reequest */
if (contact==NULL) {
ERROR("Contact header is missing!");
/* THIS IS SEVERE - I HAVE NO WAY TO FIGURE OUT WHO THE
REAL CLIENT IS BEHIND THIS PACKET...
what can I do here? */
return 1;
}
#endif
type = 0;
for (i=0; i<URLMAP_SIZE; i++) {
if (urlmap[i].active == 0) continue;
@@ -96,6 +109,7 @@ int proxy_request (sip_t *request) {
break;
}
#if 0 /* Contact Header Issue */
/* outgoing request ('contact' == 'true') */
if (compare_url(contact->url, urlmap[i].true_url)==0) {
type=REQTYP_OUTGOING;
@@ -104,6 +118,15 @@ int proxy_request (sip_t *request) {
request->from->url->host);
break;
}
#endif
/* outgoing request ('from' == 'masq') */
if (compare_url(request->from->url, urlmap[i].masq_url)==0) {
type=REQTYP_INCOMMING;
DEBUGC(DBCLASS_PROXY,"outgoing request from %s@%s from inbound",
request->from->url->username,
request->from->url->host);
break;
}
}