[Asterisk-Dev] Embedded Asterisk

Lars Boegild Thomsen lth at cow.dk
Fri Oct 24 01:12:40 MST 2003


Hi Mark,

Thanx for the assistance on IRC today (nick: lth).  I tried your suggestion
(printf in sipsock_read function) and can confirm your suspicion - the
function is never called when Asterisk is linked with uClibc.

A few more pointers:

1. I updated the uClibc library to latest snapshot - since it now has
dn_expand function built in.  This results in Asterisk being able to clean
compile with only the following changes:

	1. uClibc does not have the res_nxxxxx functions - so BSD like calls are
used in dns.c (basically I changed the #ifdef __Linux__ to #ifdef
__xxLinux__)

	2. uClibc does not have res_search - changed that to res_query call for
testing

2. Asterisk compiles and start up without any error messages at all.  When
loading the chan_sip:

	Parsing: '/etc/asterisk/sip.conf': Found
	SIP Listening on 0.0.0.0:5060
	Using TOS bits 0
	Registered channel type 'sip' (Session Initiation Protocol (SIP))
	Registered application 'SIPDtmfMode'
	WARNING[1024]: File chan_sip.c, Line 5433 (restart_monitor): Cannot kill
myself

3. Asterisk definitely "binds" the port.  Netstat -a:

	...
	udp	0	0	*:6060	*:*
	...

4. sipsock_read is never called.  The input buffer on the above netstat
output grows and grows if I try to connect a sip ua.

5. Absolutely NO hint output is generate from Asterisk.

That's all I can think of right now.  It's obvious that Asterisk never poll
the incomping packages from the udp stack - but why?  Any other things I can
try?

Regarding uClibc in general - most applications does run flawlessly - so I
don't think the networking code is generally flawed.

Regards,

    Lars...

--
Lars Boegild Thomsen
Technical Director
JustIT Sdn. Bhd.
Cell Phone (MY): +60 (16) 323 1999
ICQ: 6478559
Yahoo Chat: lars_boegild_thomsen at yahoo.com
MSN Chat: lars_boegild_thomsen at hotmail.com
http://www.justit.ws




More information about the asterisk-dev mailing list