[Serusers] HELP: SER-0.9 Record Route Problem Between SER andAsterisk
Richard
richard at o-matrix.org
Fri Feb 25 09:08:01 CET 2005
Route field should follow the reverse record-route field of last incoming
packet. In this case, BYE should use the record-route of ACK to construct
its route field. But I don't think it is the case with *.
It should be something like (with tag),
<sip:10.255.255.1;lr=on>, <sip:24.11.12.24;lr=on>,
<sip:68.86.100.20:5060;lr=on>
however it uses,
<sip:24.11.12.24;r2=on;ftag=27DECB5C-17BD;lr=on>,
<sip:68.86.100.20:5060;lr>, <sip:3211231234 at 68.86.100.30:5060>.
Richard
> -----Original Message-----
> From: Java Rockx [mailto:javarockx at gmail.com]
> Sent: Thursday, February 24, 2005 2:11 AM
> To: Richard
> Cc: serusers at lists.iptel.org
> Subject: Re: [Serusers] HELP: SER-0.9 Record Route Problem Between SER
> andAsterisk
>
> Here is my ser.cfg which I've removed all the non-BYE related route
blocks.
>
> Many Thanks!
> Paul
>
> listen=24.11.12.24
> listen=10.255.255.1
> mhomed=1
>
> # loadmodule stuff goes here
> # modparam stuff goes here
>
> route {
>
> # ------------------------------------------------------------------
> ------
> # Sanity Check Section
> # ------------------------------------------------------------------
> ------
>
> # ------------------------------------------------------------------
> ------
> # Record Route Section
> # ------------------------------------------------------------------
> ------
> if (method!="REGISTER") {
> record_route();
> };
>
> if (loose_route()) {
>
> if (method=="BYE") {
> setflag(1); # enable accounting for BYE
messages. We do
> not
> # enable accounting for
Record-Routed INVITE
> messages
> # because these are re-INVITEs and
we
> already captured
> # the original INVITE during the
call setup
> };
>
> # I'm using mediaproxy - so tear down the RTP stuff
> if (method=="BYE" || method=="CANCEL")) {
> end_media_session();
> };
>
> if (method=="INVITE") {
> # re-INVITE messages must be handled differently
because
> # our transparent RTP proxy needs to test the caller
and
> # callee for NATed IP addresses otherwise we could
lose
> # audio on one or both directions
> route(8);
> } else {
> route(1);
> };
> break;
> };
>
> # Only handle message destined for out served domains. Other
> messages
> are just relayed
> if (!uri==myself) {
> route(1);
> break;
> };
>
> # ------------------------------------------------------------------
> ------
> # Message Handler Logic
> # ------------------------------------------------------------------
> ------
> if (method=="BYE") {
> # NOTE: all BYE messages should be record-routed so they
> should never
> # hit this code block since they should be handled in
the
> # loose_route section above, so this is just a safety
net
>
> end_media_session();
> route(1);
> } else if (method=="CANCEL") {
> # I'm not sure if any CANCELs messages would ever hit this
> block
> # but it's here for good measure :-)
> end_media_session();
> route(1);
> } else if (method=="INVITE") {
> setflag(1); # enable accounting for *original* INVITE
messages
> route(6);
> } else if (method=="NOTIFY") {
> route(2);
> } else if (method=="OPTIONS") {
> route(3);
> } else if (method=="REFER") {
> route(6);
> } else if (method=="REGISTER") {
> route(4);
> } else if (method=="SUBSCRIBE") {
> route(5);
> } else {
> # all other messages come here for default handling
> route(1);
> };
> }
>
> route[1] {
> # ----------------------------------------------------------------
> --------
> # default message handler
> # ----------------------------------------------------------------
> --------
>
> # A note on when we need to call lookup("location")
> #
> # This was posted to serusers on 02/23/2005 by Daniel-Constantin
> Mierla
> #
> # lookup("location") has to be used for any request that has the
> domain
> # part of R-URI pointing to your SIP server, should be delivered to
> an
> # end-user and does not have to follow any Route header -- it does
> not
> # matter the type of method. Could be said that only REGISTERs are
> just
> # for servers, the others are either mixed (e.g, OPTIONS) or only
> for
> # end-users.
>
> if (!search(^"Route:") && !search(^"Record-Route:")) {
> lookup("location");
> };
>
> if (!t_relay()) {
> sl_reply_error();
> };
> }
>
> route[2] {
> # ----------------------------------------------------------------
> --------
> # NOTIFY Message Handler
> # ----------------------------------------------------------------
> --------
> }
>
> route[3] {
> # ------------------------------------------------------------------
> ------
> # OPTIONS Message Handler
> # ------------------------------------------------------------------
> ------
> }
>
> route[4] {
> # ------------------------------------------------------------------
> ------
> # REGISTER Message Handler
> # ------------------------------------------------------------------
> ------
> }
>
> route[5] {
> # ------------------------------------------------------------------
> ------
> # SUBSCRIBE Message Handler
> # ------------------------------------------------------------------
> ------
> }
>
> route[6] {
> # ------------------------------------------------------------------
> ------
> # INVITE Message Handler
> # ------------------------------------------------------------------
> ------
> }
>
> route[7] {
>
> # voicemail route
>
> rewritehostport("10.255.255.2:5060");
> append_branch();
>
> if (!isflagset(15)) {
> use_media_proxy();
> };
>
> t_on_reply("1");
> if (!t_relay()) {
> end_media_session();
> sl_reply_error();
> };
> }
>
> route[8] {
>
> # ----------------------------------------------------------------
> --------
> # re-INVITE Message Handler
> #
> # This route is a stripped down version of route[6]. Here we only
> # lookup('location') in order to get the NAT flag from the location
> # table because we need to know wheather or not to enable RTP
> proxying
> }
>
> onreply_route[1] {
>
> }
>
> failure_route[1] {
>
> }
>
>
>
> On Wed, 23 Feb 2005 22:08:12 -1000, Richard <richard at o-matrix.org> wrote:
> > It looks like a ser related problem. A ser config would help to
> > troubleshoot.
> >
> > Richard
> >
> > > -----Original Message-----
> > > From: serusers-bounces at iptel.org [mailto:serusers-bounces at lists.iptel.org]
> On
> > > Behalf Of Java Rockx
> > > Sent: Wednesday, February 23, 2005 6:44 PM
> > > To: serusers at lists.iptel.org
> > > Subject: [Serusers] HELP: SER-0.9 Record Route Problem Between SER
> > > andAsterisk
> > >
> > > Hi All.
> > >
> > > I'm using ser-0.9
> > >
> > > Can anyone take a quick look at this short SIP conversation and tell
> > > me if they think the problem is with my ser.cfg or a bug in Asterisk
> > > 1.0.2.
> > >
> > > We use a 3rd party for PSTN gateway functionality. This 3rd party uses
> > > a Sonus box behind a SIP proxy. Our SER proxy talks directly to their
> > > SIP proxy as needed to complete PSTN calls.
> > >
> > > The problem is that when a PSTN caller dials a SIP phone and gets sent
> > > to voice mail (Asterisk) because of a no answer or busy condition,
> > > Asterisk hangs up after the caller leaves a message. When Asterisk
> > > hangs up, the BYE from Asterisk is sent to SER, however, SER
> > > incorrectly forwards the BYE directly to their Sonus gateway, rather
> > > than the their SIP proxy. This causes our PSTN gateway provider to
> > > have "open" billing records in their system.
> > >
> > > If you look at the BYE message from Asterisk to SER you can see that
> > > route headers are missing (I think). The final BYE should have been
> > > sent to 68.86.100.20, but it was sent to 68.86.100.30 instead.
> > >
> > > I am record_route()ing all messages except for REGISTER and I have the
> > > mhomed=1 parameter set.
> > >
> > > Can anyone help me put the blame on either my ser.cfg or Asterisk?
> > >
> > > Regards,
> > > Paul
> > >
> > >
> > > IP LEGEND
> > > -----------
> > > 68.86.100.30 - 3rd Party Sonus PSTN Gateway
> > > 68.86.100.20 - 3rd Party SIP Proxy
> > > 24.11.12.24 - Sip Express Router (eth0)
> > > 10.255.255.1 - Sip Express Router (eth1)
> > > 10.255.255.2 - Asterisk PBX
> > >
> > > NOTE: I have Asterisk connected to the SER server with a crossover
> cable.
> > >
> > >
> > >
> > > U 2005/02/23 22:24:18.848582 68.86.100.20:5060 -> 24.11.12.24:5060
> > > INVITE sip:4075551212 at 24.11.12.24:5060 SIP/2.0.
> > > Via: SIP/2.0/UDP 68.86.100.20:5060;branch=z9hG4bKed82c1ba766-c3014f40.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=7a874abcac87c7752a3d3c5c7ba10dc0.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 INVITE.
> > > Max-Forwards: 4.
> > > Contact: sip:3211231234 at 68.86.100.30:5060.
> > > Record-Route: <sip:68.86.100.20:5060;lr>.
> > > Content-Type: application/sdp.
> > > Content-Length: 312.
> > > .
> > > v=0.
> > > o=NexTone-MSW 1234 187 IN IP4 66.236.245.98.
> > > s=sip call.
> > > c=IN IP4 66.236.245.98.
> > > t=0 0.
> > > m=audio 16814 RTP/AVP 18 0 4 8 101.
> > > a=rtpmap:18 G729/8000.
> > > a=fmtp:18 annexb=no.
> > > a=rtpmap:0 PCMU/8000.
> > > a=rtpmap:4 G723/8000.
> > > a=fmtp:4 annexa=yes.
> > > a=rtpmap:8 PCMA/8000.
> > > a=rtpmap:101 telephone-event/8000.
> > > a=fmtp:101 0-16.
> > >
> > > #
> > > U 2005/02/23 22:24:18.860022 24.11.12.24:5060 -> 68.86.100.20:5060
> > > SIP/2.0 100 trying -- your call is important to us.
> > > Via: SIP/2.0/UDP 68.86.100.20:5060;branch=z9hG4bKed82c1ba766-c3014f40.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=7a874abcac87c7752a3d3c5c7ba10dc0.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 INVITE.
> > > Content-Length: 0.
> > > .
> > >
> > > #
> > > U 2005/02/23 22:24:18.860259 10.255.255.1:1033 -> 10.255.255.2:5060
> > > INVITE sip:699 at 10.255.255.2:5060 SIP/2.0.
> > > Record-Route: <sip:10.255.255.1;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Record-Route: <sip:24.11.12.24;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Via: SIP/2.0/UDP 10.255.255.1;branch=z9hG4bKb929.21080974.0.
> > > Via: SIP/2.0/UDP 68.86.100.20:5060;branch=z9hG4bKed82c1ba766-c3014f40.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=7a874abcac87c7752a3d3c5c7ba10dc0.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 INVITE.
> > > Max-Forwards: 3.
> > > Contact: sip:3211231234 at 68.86.100.30:5060.
> > > Record-Route: <sip:68.86.100.20:5060;lr>.
> > > Content-Type: application/sdp.
> > > Content-Length: 312.
> > > .
> > > v=0.
> > > o=NexTone-MSW 1234 187 IN IP4 66.236.245.98.
> > > s=sip call.
> > > c=IN IP4 24.11.12.24.
> > > t=0 0.
> > > m=audio 36574 RTP/AVP 18 0 4 8 101.
> > > a=rtpmap:18 G729/8000.
> > > a=fmtp:18 annexb=no.
> > > a=rtpmap:0 PCMU/8000.
> > > a=rtpmap:4 G723/8000.
> > > a=fmtp:4 annexa=yes.
> > > a=rtpmap:8 PCMA/8000.
> > > a=rtpmap:101 telephone-event/8000.
> > > a=fmtp:101 0-16.
> > >
> > > #
> > > U 2005/02/23 22:24:18.871131 10.255.255.2:5060 -> 10.255.255.1:1033
> > > SIP/2.0 100 Trying.
> > > Via: SIP/2.0/UDP
> > >
> 10.255.255.1;branch=z9hG4bKb929.21080974.0;received=10.255.255.1;rport=103
> > > 3.
> > > Via: SIP/2.0/UDP 68.86.100.20:5060;branch=z9hG4bKed82c1ba766-c3014f40.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=7a874abcac87c7752a3d3c5c7ba10dc0.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 INVITE.
> > > User-Agent: Asterisk PBX.
> > > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER.
> > > Contact: <sip:699 at 10.255.255.2>.
> > > Content-Length: 0.
> > > .
> > >
> > > #
> > > U 2005/02/23 22:24:18.879160 10.255.255.2:5060 -> 10.255.255.1:1033
> > > SIP/2.0 200 OK.
> > > Via: SIP/2.0/UDP
> > >
> 10.255.255.1;branch=z9hG4bKb929.21080974.0;received=10.255.255.1;rport=103
> > > 3.
> > > Via: SIP/2.0/UDP 68.86.100.20:5060;branch=z9hG4bKed82c1ba766-c3014f40.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=7a874abcac87c7752a3d3c5c7ba10dc0.
> > > Record-Route: <sip:10.255.255.1;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Record-Route: <sip:24.11.12.24;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Record-Route: <sip:68.86.100.20:5060;lr>.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 INVITE.
> > > User-Agent: Asterisk PBX.
> > > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER.
> > > Contact: <sip:699 at 10.255.255.2>.
> > > Content-Type: application/sdp.
> > > Content-Length: 362.
> > > .
> > > v=0.
> > > o=root 550 550 IN IP4 10.255.255.2.
> > > s=session.
> > > c=IN IP4 10.255.255.2.
> > > t=0 0.
> > > m=audio 17900 RTP/AVP 97 18 3 4 2 0 8 101.
> > > a=rtpmap:97 iLBC/8000.
> > > a=rtpmap:18 G729/8000.
> > > a=rtpmap:3 GSM/8000.
> > > a=rtpmap:4 G723/8000.
> > > a=rtpmap:2 G726-32/8000.
> > > a=rtpmap:0 PCMU/8000.
> > > a=rtpmap:8 PCMA/8000.
> > > a=rtpmap:101 telephone-event/8000.
> > > a=fmtp:101 0-16.
> > > a=silenceSupp:off - - - -.
> > >
> > > #
> > > U 2005/02/23 22:24:18.883882 24.11.12.24:5060 -> 68.86.100.20:5060
> > > SIP/2.0 200 OK.
> > > Via: SIP/2.0/UDP 68.86.100.20:5060;branch=z9hG4bKed82c1ba766-c3014f40.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=7a874abcac87c7752a3d3c5c7ba10dc0.
> > > Record-Route: <sip:10.255.255.1;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Record-Route: <sip:24.11.12.24;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Record-Route: <sip:68.86.100.20:5060;lr>.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 INVITE.
> > > User-Agent: Asterisk PBX.
> > > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER.
> > > Contact: <sip:699 at 10.255.255.2>.
> > > Content-Type: application/sdp.
> > > Content-Length: 363.
> > > .
> > > v=0.
> > > o=root 550 550 IN IP4 10.255.255.2.
> > > s=session.
> > > c=IN IP4 24.11.12.24.
> > > t=0 0.
> > > m=audio 36574 RTP/AVP 97 18 3 4 2 0 8 101.
> > > a=rtpmap:97 iLBC/8000.
> > > a=rtpmap:18 G729/8000.
> > > a=rtpmap:3 GSM/8000.
> > > a=rtpmap:4 G723/8000.
> > > a=rtpmap:2 G726-32/8000.
> > > a=rtpmap:0 PCMU/8000.
> > > a=rtpmap:8 PCMA/8000.
> > > a=rtpmap:101 telephone-event/8000.
> > > a=fmtp:101 0-16.
> > > a=silenceSupp:off - - - -.
> > >
> > > #
> > > U 2005/02/23 22:24:19.097436 68.86.100.20:5060 -> 24.11.12.24:5060
> > > ACK sip:699 at 10.255.255.2 SIP/2.0.
> > > Via: SIP/2.0/UDP
> > 68.86.100.20:5060;branch=ef5ce1f8a400adab242436d0564cb045.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=ef5ce1f8a400adab242436d0564cb045.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 ACK.
> > > Max-Forwards: 4.
> > > Contact: sip:3211231234 at 68.86.100.30:5060.
> > > Record-Route: <sip:68.86.100.20:5060;lr>.
> > > Route: <sip:24.11.12.24;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Route: <sip:10.255.255.1;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Content-Length: 0.
> > > .
> > >
> > > #
> > > U 2005/02/23 22:24:19.098087 10.255.255.1:1033 -> 10.255.255.2:5060
> > > ACK sip:699 at 10.255.255.2 SIP/2.0.
> > > Record-Route: <sip:10.255.255.1;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Record-Route: <sip:24.11.12.24;r2=on;ftag=27DECB5C-17BD;lr=on>.
> > > Via: SIP/2.0/UDP 10.255.255.1;branch=0.
> > > Via: SIP/2.0/UDP
> > 68.86.100.20:5060;branch=ef5ce1f8a400adab242436d0564cb045.
> > > Via: SIP/2.0/UDP
> > 68.86.100.30:5060;branch=ef5ce1f8a400adab242436d0564cb045.
> > > To: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > From: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 1 ACK.
> > > Max-Forwards: 3.
> > > Contact: sip:3211231234 at 68.86.100.30:5060.
> > > Record-Route: <sip:68.86.100.20:5060;lr>.
> > > Content-Length: 0.
> > > .
> > >
> > > ###
> > > U 2005/02/23 22:24:25.104860 10.255.255.2:5060 -> 10.255.255.1:1033
> > > BYE sip:3211231234 at 68.86.100.30:5060 SIP/2.0.
> > > Via: SIP/2.0/UDP 10.255.255.2:5060;branch=z9hG4bK2da77693;rport.
> > > Route: <sip:24.11.12.24;r2=on;ftag=27DECB5C-
> > >
> 17BD;lr=on>,<sip:68.86.100.20:5060;lr>,<sip:3211231234 at 68.86.100.30:5060>.
> > > From: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > To: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Contact: <sip:699 at 10.255.255.2>.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 102 BYE.
> > > User-Agent: Asterisk PBX.
> > > Content-Length: 0.
> > > .
> > >
> > > #
> > > U 2005/02/23 22:24:25.108961 24.11.12.24:5060 -> 68.86.100.30:5060
> > > BYE sip:3211231234 at 68.86.100.30:5060 SIP/2.0.
> > > Max-Forwards: 10.
> > > Record-Route: <sip:24.11.12.24;r2=on;ftag=as588114d9;lr=on>.
> > > Record-Route: <sip:10.255.255.1;r2=on;ftag=as588114d9;lr=on>.
> > > Via: SIP/2.0/UDP 24.11.12.24;branch=z9hG4bK231b.07949ea5.0.
> > > Via: SIP/2.0/UDP 10.255.255.2:5060;branch=z9hG4bK2da77693;rport=5060.
> > > From: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > To: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Contact: <sip:699 at 10.255.255.2>.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 102 BYE.
> > > User-Agent: Asterisk PBX.
> > > Content-Length: 0.
> > > Route: <sip:3211231234 at 68.86.100.30:5060>.
> > > .
> > >
> > > #
> > > U 2005/02/23 22:24:25.175832 68.86.100.30:5060 -> 24.11.12.24:5060
> > > SIP/2.0 200 OK.
> > > Via: SIP/2.0/UDP 24.11.12.24;branch=z9hG4bK231b.07949ea5.0.
> > > Via: SIP/2.0/UDP 10.255.255.2:5060;branch=z9hG4bK2da77693;rport=5060.
> > > From: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > To: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 102 BYE.
> > > Content-Length: 0.
> > > .
> > >
> > > #
> > > U 2005/02/23 22:24:25.176182 10.255.255.1:1033 -> 10.255.255.2:5060
> > > SIP/2.0 200 OK.
> > > Via: SIP/2.0/UDP 10.255.255.2:5060;branch=z9hG4bK2da77693;rport=5060.
> > > From: 4075551212 <sip:4075551212 at 68.86.100.30:5060>;tag=as588114d9.
> > > To: sip:3211231234 at 66.236.245.98;tag=27DECB5C-17BD.
> > > Call-ID: 9028535-3318204258-749010 at 68.86.100.30.
> > > CSeq: 102 BYE.
> > > Content-Length: 0.
> > > .
> > >
> > > _______________________________________________
> > > Serusers mailing list
> > > serusers at lists.iptel.org
> > > http://lists.iptel.org/mailman/listinfo/serusers
> >
> >
More information about the sr-users
mailing list