> On Feb. 3, 2014, 1:26 p.m., wdoekes wrote: > > /trunk/channels/sip/include/route.h, lines 33-35 > > <https://reviewboard.asterisk.org/r/3173/diff/1/?file=53352#file53352line33> > > > > A bit uncommon to have the unknown between the known values. > > Corey Farrell wrote: > route_loose = 0 because a route is loose when no hops exist, and the > field is zero when sip_route's are created (as part of a larger ast_calloc). > > route_unknown is used when a hop is inserted to the head of > sip_route->list. Maybe it would be better if I rename route_unknown to > route_invalidated, document that strict/loose needs to be rechecked?
I don't have an opinion regarding unknown vs. invalidated, but if you're using the 0-value implicitly through the calloc, you should document doing so. > On Feb. 3, 2014, 1:26 p.m., wdoekes wrote: > > /trunk/channels/sip/route.c, line 180 > > <https://reviewboard.asterisk.org/r/3173/diff/1/?file=53354#file53354line180> > > > > const struct sip_route ? > > Corey Farrell wrote: > No. sip_route_is_strict writes to route->type when it equals > route_unknown. I can see that. But I'm not fond of is_something() taking a non-const. (Although the alternatives of an explicit sip_route_finalize() call or (worse) const-casting aren't too pretty either.) - wdoekes ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviewboard.asterisk.org/r/3173/#review10741 ----------------------------------------------------------- On Feb. 3, 2014, 2:10 p.m., Corey Farrell wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviewboard.asterisk.org/r/3173/ > ----------------------------------------------------------- > > (Updated Feb. 3, 2014, 2:10 p.m.) > > > Review request for Asterisk Developers. > > > Bugs: ASTERISK-22582 > https://issues.asterisk.org/jira/browse/ASTERISK-22582 > > > Repository: Asterisk > > > Description > ------- > > Isolates code that manages struct sip_route. > > * Move route code to sip/route.c + sip/include/route.h > * Rename functions to sip_route_* > * Replace ad-hoc list code with macro's from linkedlists.h > * Create sip_route_process_header() to processes Path and Record-Route > headers (previously done with different code in build_route and build_path) > * Make sip_route uri accessor return a const > * Move struct uriparams, struct contact and contactliststruct from sip.h to > reqresp_parser.h. sip/route.c uses reqresp_parser.h but not sip.h, this was > a problem. These moved declares are not used outside of reqresp_parser. > * While modifying reqprep() the lack of {} caused me trouble. I added them. > * Code outside route.c treats sip_route as an opaque structure, using macro's > or procedures for all access. > > > Diffs > ----- > > /trunk/channels/sip/route.c PRE-CREATION > /trunk/channels/sip/include/sip.h 407178 > /trunk/channels/sip/include/route.h PRE-CREATION > /trunk/channels/sip/include/reqresp_parser.h 407178 > /trunk/channels/chan_sip.c 407178 > > Diff: https://reviewboard.asterisk.org/r/3173/diff/ > > > Testing > ------- > > > Thanks, > > Corey Farrell > >
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev