Hi,
I have just updated my source version from CVS and find that I get
hundreds of warnings about incompatible pointer types when doing make all.
Have you changed the module export structure (the warning seem to point to
there)?
thanks
Stephan
--
The University of Stirling is a university established in Scotland by
charter at Stirling, FK9 4LA. Privileged/Confidential Information may
be contained in this message. If you are not the addressee indicated
in this message (or responsible for delivery of the message to such
person), you may not disclose, copy or deliver this message to anyone
and any action taken or omitted to be taken in reliance on it, is
prohibited and may be unlawful. In such case, you should destroy this
message and kindly notify the sender by reply email. Please advise
immediately if you or your employer do not consent to Internet email
for messages of this kind. Opinions, conclusions and other
information in this message that do not relate to the official
business of the University of Stirling shall be understood as neither
given nor endorsed by it.
Yes, the CSeq is incremented.
Thanks,
-g
>
>Hello Greg,
>
>On 11-03 07:40, Greg Fausak wrote:
>> What is weird about the OPTIONS request is that it is
>> including the established Callid.
>
> That is imho fine as long as CSeq in OPTIONS has higher value than
> CSeq in INVITE.
>
> Jan.
>
>--8GpibOaaTibBMecb
>Content-Type: application/pgp-signature
>Content-Disposition: inline
>
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.2.1 (GNU/Linux)
>
>iD8DBQE+bfTyA0X9pGsVw/URAirmAJ9iqtJFrHLYmUm2rMY7PL0yuvOQgwCdFDXn
>EnqT7XpxTAAArEhhT2p9x7E=
>=QKSs
>-----END PGP SIGNATURE-----
>
>--8GpibOaaTibBMecb--
>
Hi Nils, I've copied my ser.cfg file into the body of this email. As you can
see 'fork=yes'. I've also copied the output of the serctl ps. As you can see
my config is pretty basic at this point. Thansk Mike
0 8512 attendant
1 8514 receiver child=0 sock=0 @ 127.0.0.1::5060
2 8515 receiver child=1 sock=0 @ 127.0.0.1::5060
3 8516 receiver child=2 sock=0 @ 127.0.0.1::5060
4 8517 receiver child=3 sock=0 @ 127.0.0.1::5060
5 8518 receiver child=0 sock=1 @ 10.100.100.243::5060
6 8519 receiver child=1 sock=1 @ 10.100.100.243::5060
7 8520 receiver child=2 sock=1 @ 10.100.100.243::5060
8 8521 receiver child=3 sock=1 @ 10.100.100.243::5060
9 8522 fifo server
10 8539 timer
#
# $Id: ser.cfg,v 1.12 2002/10/21 02:40:06 jiri Exp $
#
# simple quick-start config script
#
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no # (cmd line: -E)
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
port=5060
children=4
fifo="/tmp/ser_fifo"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "//usr/lib/ser/modules/mysql.so"
loadmodule "//usr/lib/ser/modules/sl.so"
loadmodule "//usr/lib/ser/modules/tm.so"
loadmodule "//usr/lib/ser/modules/rr.so"
loadmodule "//usr/lib/ser/modules/maxfwd.so"
loadmodule "//usr/lib/ser/modules/usrloc.so"
loadmodule "//usr/lib/ser/modules/registrar.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "//usr/lib/ser/modules/auth.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
#modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
modparam("usrloc", "db_mode", 2)
# -- auth params --
# Uncomment if you are using auth module
#
modparam("auth", "secret", "alsdkhglaksdhfkloiwr")
modparam("auth", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this config),
# uncomment also the following parameter)
#
modparam("auth", "password_column", "password")
# ------------------------- request routing logic -------------------
# main routing logic
route{
# initial sanity checks -- messages with
# max_forwars==0, or excessively long requests
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
break;
};
if (len_gt( max_len )) {
sl_send_reply("513", "Message too big");
};
# Do strict routing if pre-loaded route headers present
rewriteFromRoute();
# if the request is for other domain use UsrLoc
# (in case, it does not work, use the following command
# with proper names and addresses in it)
if (uri=~"to-talk.com") {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
if (!www_authorize("to-talk.com", "subscriber")) {
www_challenge("to-talk.com", "0");
break;
};
save("location");
break;
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
> Hello Mike,
>
> On Tuesday 11 March 2003 14:28, mjkane(a)attbi.com wrote:
> > Hello, I have sucessfully configured SER to connect to mysql, but, now when
> > I execute ./ser start only 3 process are loaded. If I load SER using the
> > default ser.cfg file it loads 11 processes. Any thoughts..
>
> sounds like you configured 'fork=no'. Then you would have one timer process,
> one process for fifo, and one answering requests. You can check this with
> 'serctl ps'.
>
> Greetings
> Nils
Hello, I have sucessfully configured SER to connect to mysql, but, now when I
execute ./ser start only 3 process are loaded. If I load SER using the
default ser.cfg file it loads 11 processes. Any thoughts..
Mike
If I have a SIP message in a char* variable, then I assume that I can parse
it into a struct sip_msg* using a function in ser. The most obvious function
seems to be parse_msg(). This does not seem to work to my expectation.
Here is a code snippet (which is close to the code in receive.c):
char* response // contains my message
struct sip_msg msg // this is were the result should go
memset(msg, 0, sizeof(struct sip_msg));
response[len] = 0;
msg->buf = response;
msg->len = len;
if (parse_msg(response, len, msg))!=0) {
LOG(L_ERR, "ERROR");
}
LOG(L_ERR, "After parse msg ...")
dump_sip_msg(msg) // this just prints the fields of the message to LOG
dump_sip_msg() works fine on the incoming sip message, so the problem is
either in my SIP message or in my use of the parse function. However, I
think my message is fine (it is the received message with the first line
replaced with SIP/2.0 600 Policy Server Msg date time). I enclose a cut from
/var/log/messages.
Stephan
/var/log/messages:
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: After parse_msg...
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: polserv: dump_sip_msg()
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->id: int = 0
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->first_line:
msg_start (rep) 600 Policy Server Msg 2003-03-07 14:52:24^M Via: SIP/2.0/UDP
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: DEBUG: dump_hdr_field:
type=1, name=Via, body=SIP/2.0/UDP 139.153.254.196:5062, parsed=0x80a584c,
next=(nil)
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: DEBUG: dump_hdr_field:
type=1, name=Via, body=SIP/2.0/UDP 139.153.254.196:5062, parsed=0x80a584c,
next=(nil)
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->parsed_flag 1
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: DEBUG: dump_hdr_field:
type=1, name=Via, body=SIP/2.0/UDP 139.153.254.196:5062, parsed=0x80a584c,
next=(nil)
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: DEBUG: dump_hdr_field:
field is NULL
Mar 7 14:52:41 d254196 last message repeated 20 times
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->eoh: (null)
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->unparsed: CSeq: 7635
REGISTER^M To: "Stephan" <sip:mrs@cs.stir.ac.uk>^M Expires: 900^M From:
"Stephan" <sip:mrs@cs.stir.ac.uk>^M Call-Id: 138108089(a)139.153.254.196^M
User-Agent: KPhone/2.11^M Event: registration^M Allow-Events: presence^M
Contact: "root"
<sip:root@139.153.254.196:5062;transport=UDP>;methods="INVITE, MESSAGE,
INFO, SUBSCRIBE, OPTIONS, BYE, CANCEL, NOTIFY, ACK"^M Content-Length: 0^M ^M
^M
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->buf: SIP/2.0 600
Policy Server Msg 2003-03-07 14:52:24^M Via: SIP/2.0/UDP
139.153.254.196:5062^M CSeq: 7635 REGISTER^M To: "Stephan"
<sip:mrs@cs.stir.ac.uk>^M Expires: 900^M From: "Stephan"
<sip:mrs@cs.stir.ac.uk>^M Call-Id: 138108089(a)139.153.254.196^M User-Agent:
KPhone/2.11^M Event: registration^M Allow-Events: presence^M Contact: "root"
<sip:root@139.153.254.196:5062;transport=UDP>;methods="INVITE, MESSAGE,
INFO, SUBSCRIBE, OPTIONS, BYE, CANCEL, NOTIFY, ACK"^M Content-Length: 0^M ^M
^M
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->len: 475
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: msg->parsed_uri_ok: int =
0
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: polserv: all fine,
returning now ...
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: ERROR: parse_sip_msg_uri:
bad uri <600>
Mar 7 14:52:41 d254196 /usr/local/sbin/ser[9566]: WARNING: do_action:error
in expression
--
Dr Stephan Reiff-Marganiec
Research Fellow
Department of Computing Science; University of Stirling
email: srm(a)cs.stir.ac.uk tel: 01786 46 7448
--
The University of Stirling is a university established in Scotland by
charter at Stirling, FK9 4LA. Privileged/Confidential Information may
be contained in this message. If you are not the addressee indicated
in this message (or responsible for delivery of the message to such
person), you may not disclose, copy or deliver this message to anyone
and any action taken or omitted to be taken in reliance on it, is
prohibited and may be unlawful. In such case, you should destroy this
message and kindly notify the sender by reply email. Please advise
immediately if you or your employer do not consent to Internet email
for messages of this kind. Opinions, conclusions and other
information in this message that do not relate to the official
business of the University of Stirling shall be understood as neither
given nor endorsed by it.
When I tryto go the page localhost/admin/index.php I get the following
error.
Warning: mysql_pconnect() [function.mysql-pconnect
<http://www.php.net/function.mysql-pconnect>]: Can't connect to local MySQL
server through socket '/tmp/mysql.sock' (2) in
/usr/local/serweb/phplib/db_mysql.inc on line 73
Database error: pconnect(localhost, ser, $Password) failed.
MySQL Error: ()
Session halted.
Any help would ne greatly appreciated.
Thanks
Craig Wolfe
Hello all, what file directs where SER looks for the mysql.sock file. In my
case mysql.sock is located in /tmp and as you can see SER is lookin for it
in /var/lib/mysql
Mar 10 16:46:33 ttalksvr /usr/sbin/ser[6592]: connect_db(): Can't connect to
local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
Thanks Mike
We are contemplating building an Admin interface for SER that could run on a
windows os. We like the fact that the server is running on Linux but we
require a more intuitive interface for administration.
A web interface is not acceptable, just not enough functionality. We would
like to create an executable that runs on windows which interfaces with SER
server running on Linux.
I am curious if anyone else could make use of a GUI that would incorporate
all of the SER features and functionality. What do you think? Should we
attempt it? Does anyone have any preference on the language we use, e.g.
JAVA, C++ ?
Erik Lagerway
Xten Networks Inc.
7170-515 West Hastings St
Vancouver, BC
V6B5K3
Ph. 1.604.878.0440 ext.5
Some interesting modifications I have made to improve
acc process.
1)
--------------
Some changes made to acc.c to strip down the user
names for output and also to get missed calls logged
with callee rather than caller. It was showing missed
calls on the callers missed_calls.php which is
incorrect.
Here are the extracts, I can post the full prog if
required:
/*
JF added following block to extract to user
*/
str_copy(&to_user, &rq->to->body);
if ((ul_get_user(&to_user) < 0) ||
!to_user.len) {
LOG(L_ERR, "ERROR: acc_request: Error
while extracting to_username\n");
return -1;
}
/*
str_copy(&user, &rq->first_line.u.request.uri);
JF modified this copy statement to create correct acc
username (from not to!)
*/
str_copy(&user, &rq->from->body);
2)
---------------------
I modified the $q in accounting.php to the below to
include calls where BYE sent by callee as well as
caller (before it was not displaying calls when closed
by callee). Also elimination of double counting of
calls due to
multiple INVITEs being sent by UAC. max(time) is
required as distinct rows are produced if the invites
are > 1sec apart. "Group by" puts all the
INVITEs together so that the latest one can be
selected with max(). Assume that latest invite is
correct for measuring call start time. The max(time)
column has been aliased to c2 so that it can be used
in the output $time=Substr($row->c2,0,16).
Here it is:
$q="select distinct t1.sip_callid, max(t1.time) c2,
t1.sip_to,
sec_to_time(unix_timestamp(t2.time)-unix_timestamp(max(t1.time)))
as length ".
"from ".$config->table_accounting." t1,
".$config->table_accounting." t2 ".
"where (t1.user='".$auth->auth["uname"]."' and
t1.sip_method='INVITE') and
((t2.user='".$auth->auth["uname"]."' or
t2.sip_to='".$auth->auth["uname"]."') and
t2.sip_method='BYE') and ".
"t1.sip_callid=t2.sip_callid group by t1.sip_callid
".
"order by t1.time desc";
3) I modified the &q in missed_calls.php to the below
to include calls to aliases as well. The query looks
in the missed_calls table for the sip_to = logged-in
user and also joins with aliases table to extract
calls to alias of contact. Otherwise missed_calls.php
only provided calls made directly to a user and
ignored calls to aliases.
Here it is:
$q="select distinct t1.user, t1.sip_to, t1.time,
t1.sip_status, t1.sip_callid from
".$config->table_missed_calls."
t1,".$config->table_aliases." t2 where
t1.sip_to='".$auth->auth["uname"]."' OR
('sip:".$auth->auth["uname"]."@".$config->default_domain."'=t2.contact
AND t2.user=t1.sip_to) order by time desc";
echo $q;
4)
-----------------
Any comments will be appreciated.
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/
How about a java applet for use with a web browser? I'd have no problem
with a
requirement for a Windows PC for management, but I can see it being an
issue
for others.
And yes I would use it, in whatever form it took.
Dan
-----Original Message-----
From: Erik Lagerway [mailto:sipdev@xten.com]
Sent: Thursday, March 06, 2003 1:50 PM
To: sip-implementors(a)cs.columbia.edu
Cc: serusers(a)lists.iptel.org
Subject: [Serusers] Admin Interface
We are contemplating building an Admin interface for SER that
could run on a windows os. We like the fact that the server is running
on Linux but we require a more intuitive interface for administration.
A web interface is not acceptable, just not enough
functionality. We would like to create an executable that runs on
windows which interfaces with SER server running on Linux.
I am curious if anyone else could make use of a GUI that would
incorporate all of the SER features and functionality. What do you
think? Should we attempt it? Does anyone have any preference on the
language we use, e.g. JAVA, C++ ?
Erik Lagerway
Xten Networks Inc.
7170-515 West Hastings St
Vancouver, BC
V6B5K3
Ph. 1.604.878.0440 ext.5