From 00d052c18bd663e24769b7198a24aefbcd1963dc Mon Sep 17 00:00:00 2001 From: Razvan Crainea Date: Fri, 24 Jun 2016 10:54:57 +0300 Subject: [PATCH] Allow proto modules to populate its name --- net/trans.c | 17 +++++++---------- net/trans.h | 2 +- parser/parse_uri.h | 2 +- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/net/trans.c b/net/trans.c index cbb17e5a630..ae85602a256 100644 --- a/net/trans.c +++ b/net/trans.c @@ -41,12 +41,12 @@ struct proto_info protos[PROTO_LAST - PROTO_NONE] = { { }, /* PROTO_NONE */ - { .name = "udp", .port = 5060 }, /* PROTO_UDP */ - { .name = "tcp", .port = 5060 }, /* PROTO_TCP */ - { .name = "tls", .port = 5061 }, /* PROTO_TLS */ - { .name = "sctp", .port = 5060 }, /* PROTO_SCTP */ - { .name = "ws", .port = 80 }, /* PROTO_WS */ - { .name = "wss", .port = 443 }, /* PROTO_WSS */ + { .name = "udp", .default_rfc_port = 5060 }, /* PROTO_UDP */ + { .name = "tcp", .default_rfc_port = 5060 }, /* PROTO_TCP */ + { .name = "tls", .default_rfc_port = 5061 }, /* PROTO_TLS */ + { .name = "sctp", .default_rfc_port = 5060 }, /* PROTO_SCTP */ + { .name = "ws", .default_rfc_port = 80 }, /* PROTO_WS */ + { .name = "wss", .default_rfc_port = 443 }, /* PROTO_WSS */ /* populate here for other protos - not necessary right now */ }; @@ -104,13 +104,10 @@ int trans_load(void) found_proto = 1; /* copy necessary info */ protos[pi.id].id = pi.id; + protos[pi.id].name = pi.name; protos[pi.id].default_port = pi.default_port; protos[pi.id].tran = pi.tran; protos[pi.id].net = pi.net; - /* - * XXX: make sure you never overwrite port or name - * should we put it in a separate structure? - */ } } if (found_proto) diff --git a/net/trans.h b/net/trans.h index 8862d145884..ee313c47f7d 100644 --- a/net/trans.h +++ b/net/trans.h @@ -35,7 +35,7 @@ struct proto_info { char *name; /* the default port according to RFC */ - unsigned short port; + unsigned short default_rfc_port; /* proto as ID */ enum sip_protos id; diff --git a/parser/parse_uri.h b/parser/parse_uri.h index 4bd3826fa08..8e4044c01f6 100644 --- a/parser/parse_uri.h +++ b/parser/parse_uri.h @@ -69,7 +69,7 @@ static inline unsigned short get_uri_port(struct sip_uri* _uri, /* known port? */ if ((port=_uri->port_no)==0) - port = protos[proto].default_port; + port = protos[proto].default_rfc_port; if (_proto) *_proto = proto;