Bogdan,

You are right it is the destination. I added the following to udp_server.c when the error occurs:

            LOG(L_ERR, "sa = %d, %s, %d\n", to->sin.sin_family,
                inet_ntoa(to-> sin.sin_addr), ntohs(to->sin.sin_port));

Which logs:

            sa = 2, 0.0.1.244, 5060

This address is clearly invalid. Interesting thing though is that I ran an ngrep to see if I could locate a message that contains this IP and could not find one:

ngrep -p port 5060 | grep "0.0.1.244"

The above came up clean even though the log kept reporting the error.

Any more ideas?

Martin

On 2/5/07, Bogdan-Andrei Iancu <bogdan@voice-system.ro> wrote:
Martin,

after all, it look the root problem is the destination address - the
detection of the egress socket (triggered by mhomed) also fails because
of an Invalid Argument (as originally).

my guess is that an invalid ip or port is used for sending the message.
If you cannot track this down, I can try to prepare a patch to print the
destination address/port in case of error.

regards,
bogdan

Martin Burns wrote:

> Thanks for your reply Bogdan,
>
> There is definitely both UDP and TCP listening:
>
> Starting openser: openserListening on
>              udp: xx.xx.xx.xxx [xx.xx.xx.xxx]:5060
>              tcp: xx.xx.xx.xxx [xx.xx.xx.xxx ]:5060
> Aliases:
> ......
>
> Is it possible that there is simply too many messages for the server
> to handle?
>
> At the moment the server is configured with:
>
> children=20
> tcp_children=2
>
> and an ngrep suggests quite a few messages per second.
>
> Thanks
>
> Martin
>
> On 2/5/07, *Bogdan-Andrei Iancu* < bogdan@voice-system.ro
> <mailto:bogdan@voice-system.ro>> wrote:
>
>     Hi Martin,
>
>     the last error you posted says you want to forward something using UDP
>     (proto 1), but there is no listen socket for UDP.
>     can you check is there is no UDP listen configured on your openser?
>
>     regards,
>     bogdan
>
>     Martin Burns wrote:
>
>     > We have over 4 proxies running openser-1.1.0-notls. Recently we
>     > started to see the following error in the logs of one of the
>     proxies:
>     >
>     > Feb  4 06:46:21 proxy01 /usr/local/sbin/openser[4670]: ERROR:
>     > udp_send: sendto(sock,0xb3c35898,594,0,0xb3c257f4,16): Invalid
>     > argument(22)
>     > Feb  4 06:46:21 proxy01 /usr/local/sbin/openser[4670]: CRITICAL:
>     > invalid sendtoparameters one possible reason is the server is
>     bound to
>     > localhost and attempts to send to the net
>     > Feb  4 06:46:21 proxy01 /usr/local/sbin/openser[4670]: msg_send:
>     > ERROR: udp_send failed
>     > Feb  4 06:46:21 proxy01 /usr/local/sbin/openser[4670]:
>     > ERROR:tm:t_forward_nonack: sending request failed
>     >
>     > Now the errors suggests a binding to localhost, however our
>     > openser.cfg has the following:
>     >
>     > listen=eth0:5060
>     >
>     > After a brief search we came across a couple of over people
>     having a
>     > similar problem. Once of the suggested fixes was to add a mhomed=1
>     > line to the cfg.
>     >
>     > Well we tried this (even though we are not multi homed) and the
>     error
>     > changed to:
>     >
>     > Feb  5 02:54:09 proxy01 /usr/local/sbin/openser[2209]: ERROR:
>     > get_out_socket: connect failed: Invalid argument
>     > Feb  5 02:54:09 proxy01 /usr/local/sbin/openser[2209]: ERROR:
>     > get_out_socket: no socket found
>     > Feb  5 02:54:09 proxy01 /usr/local/sbin/openser[2209]:
>     > ERROR:tm:add_uac: can't fwd to af 2, proto 1  (no corresponding
>     > listening socket)
>     > Feb  5 02:54:09 proxy01 /usr/local/sbin/openser[2209]:
>     > ERROR:tm:t_forward_nonack: failure to add branches
>     >
>     > Does anyone have any suggestions or ideas as to what is causing this
>     > error.
>     >
>     > Thanks
>     >
>     > mburns
>     >
>     >------------------------------------------------------------------------
>
>     >
>     >_______________________________________________
>     >Users mailing list
>     > Users@openser.org <mailto:Users@openser.org>
>     > http://openser.org/cgi-bin/mailman/listinfo/users
>     >
>     >
>
>