Hi everyone!
I am running openser 1.1.0-tls installed with debian package.
I am trying to configure correctly TLS, and generate certificate, but in
tutorials I found, people talk about a script located in
/etc/openser/tls/tools named "gen_rootCA.sh", but I don't have the
directory "tools" in /etc/openser/tls.
Does someone have any idea about this script?
Another thing is when I tried to send a mail to a user with the command:
openserctl mail <username>
Openser makes errors like:
Write email to mail: now ...
mail: You must specify direct recipients with -s, -c, or -b
ERROR: sending message failed
I had to change the line 1777 in /usr/sbin/openserctl in
send_email $2
instead of
send_email $1
to make it work.
Greg
Hello,
thanks to Andrea Spirea, a new SIP-to-XMPP gateway was included in
OpenSER. There is a new module, XMPP, which enables SIP users to chat
with any XMPP user (Google Talk, Jabber) user in the world.
The design permits flexibility in configuration and deployments, the new
module can at alone as a XMPP server or can work in tandem with a
standalone XMPP server (for more complex communication scenarios like
TLS ...). Also, the module can be plugged in your main SIP server or can
be deployed alone, enabling in a easy manner geographic distribution and
redundancy.
There is no need of mapping SIP addresses to XMPP addresses, no need to
store translation profiles, everything is done in the fly. The
conversation will survive to restarts, the session being recovered form
the messages. As a result, there is no need of a persistent storage, the
footprint is very small, embedding the gateway in small devices should
be straightforward.
The news is posted here:
http://www.openser.org/index.php?option=com_content&task=view&id=56&Itemid=9
Module's documentation:
http://www.openser.org/docs/modules/1.2.x/xmpp.html
Feedback will be very appreciated, the next steps are to enhance the
standalone-xmpp-server version of the module with other features of a
xmpp server and to add support for presence and voice. Testing and
reports are always welcome.
Cheers,
Daniel
Hi,
I've just a quick question regarding the loose_route function
We had a discussion earlier this year when the answer for loose_route
was:
"by default, loose_route() function detects the pre-loaded route: if
there is only one Route hdr pointing to the server, it will be consumed
and loose_route() will return false. If more than one Route hdr is
present, the routing will be done as usual - function will consume the
Route and set the destination to the next Route - true is returned."
I just wonder about the "returning false" since I always see loose_route
return true...is this due to the lr tag?
eks:
My yyy.yyy.yyy.yyy receives a BYE message
BYE sip:67512391@10.46.11.132 SIP/2.0
Via: SIP/2.0/UDP xxx.xxx.xxx.xxx;branch=z9hG4bK84fb.7836a4d5.0
Via: SIP/2.0/UDP
10.46.11.101:5060;rport=5060;branch=z9hG4bK7cae83600f656a72
Route: <sip:yyy.yyy.yyy.yyy:5060;lr>
>From the explaiantion I would guess if (loose_route()){ do-something}
should not do-something???
I hope Im not totally out of my head right now
br hw
--
Helge Waastad
Senior Engineer
Systemavdelingen
Smartnet
Dear list members,
I've a problem trying to get pdt module working. These are the log I get
with debug=9.
pdt_print_tree: [sip.mydomain.com]
pdt_print_node: [2] [proxy01.sipphone.com]
pdt_print_node: [2393] [other.host.at.domain.com]
pdt_print_node: [51] [my.host.at.domain.com]
PDT:pdt_sync_cache: ...
PDT:pdt_sync_cache: sync op[1]=1...
prefix alredy allocated
pdt_add_to_tree internal error!
PDT:pdt_sync_cache: Error to insert into tree
PDT:prefix2domain: cannot update the cache
I'm working with openser 1.1.0-notls, and pdt.c version "v 1.8
2006/07/03 15:26:17 miconda Exp".
MySQL description of pdt table is:
+---------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| sdomain | varchar(255) | NO | PRI | NULL | |
| prefix | varchar(32) | NO | PRI | NULL | |
| domain | varchar(255) | NO | | NULL | |
+---------+--------------+------+-----+---------+-------+
but the association sdomain,prefix,domain seems to be correct, as the
pdt_print log lines report. Strange behaviour also occurs when I try to
list from fifo the table every two times once I get:
host:~# openserctl fifo pdt_list
database engine 'MYSQL' loaded
Control engine 'FIFO' loaded
entering fifo_cmd pdt_list
400 pdt_fifo_list - domain not found
FIFO command was:
:pdt_list:openser_receiver_25901
while the second time openserctl hangs until I kill it with ctrl+c.
Any suggestion will be helpful, thanks
Francesco Castellano
hi list,
i have strange problems with the openser_mysql.sh script:
# openser_mysql.sh create
MySql password for root:
Domain (realm) for the default user 'admin': sip.de
creating database openser ...
ERROR 1133 (42000) at line 7: Can't find any matching row in the user table
Install SERWEB tables ?(y/n):
for some reason it does not do anything besides creating a database
(with no tables in it). how am i supposed to create the database instead?
--
mit freundlichen Grüßen / with best regards
Gerd Feiner
Leitung IP-Dienste
Kabelfernsehen München ServiCenter GmbH & Co. KG
Abt. Mediaport
Medienallee 24
85774 Unterföhring
T: +49 89 95083 243
F: +49 89 95083 132
E: g.feiner(a)cablesurf.de
W: www.cablesurf.de
I have the following code in openser.cfg
if (client_nat_test("3")) {
#IP address in contact is private IP
#Via is different to address client has contacted us from
#If so then setflag7 to indicate that sender is behind NAT
xlog("client nat test 3 returned true for r-uri <$ru> in
route 3 so will setflag7");
setflag(7);
xlog("contact before update <$ct>");
xlog("via before update <$hdr(via)>");
force_rport();
#Rewrite Contact: header to contain Sip client's public
IP:port
fix_nated_contact();
xlog("contact is now <$ct>");
xlog("via is now <$hdr(via)>");
};
However the value returned by $ct is the same before and after
fix_nated_contact(). Is that because I'm doing something wrong, or because
I've misunderstood fix_nated_contact or because the $ct variable doesn't get
updated by fix_nated_contact? If the latter, how can I find out the result
of fix_nated_contact? The same applies to force_rport and the via details.
Any advice appreciated.
Regards
Cameron
Hi,
I'm trying to build openser 1.1.0 (notls) for arm for Linksys NSLU -
OpenSLUG OS.
The cross compilation went ok, but when I try to run the program I
encounter the following error:
root@LKG7BE78E # openser -c
0(4517) ERROR: load_module: could not open module
</usr/lib/openser/modules/sl.so>: /usr/lib/openser/modules/sl.so:
undefined symbol: mem_lock
0(4517) parse error (41,13-14): failed to load module
Here are the compile flags:
NOTE: make -e MAKEFLAGS= bin-target=/usr/sbin
doc-target=/usr/share/doc/openser lib-target=/usr/lib/openser/
modules-target=/usr/lib/openser/modules/ cfg-target=/etc/openser/
prefix=/usr cfg-prefix=/ ARCH=armeb LD=ccache armeb-linux-gcc
-march=armv5te -mtune=xscale -mthumb-interwork -mno-thumb all
bison -d -b cfg cfg.y
cfg.y: conflicts: 1 shift/reduce
flex cfg.lex
Compiling action.c
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include
-Os -fomit-frame-pointer -frename-registers -fno-unroll-loops
-fno-inline-functions -fweb -funit-at-a-time -DNAME='"openser"'
-DVERSION='"1.1.0-notls"' -DARCH='"armeb"' -DOS='"linux"'
-DCOMPILER='"ccache 3.4.4"' -D__CPU_armeb -D__OS_linux -D__SMP_no
-DCFG_DIR='"/etc/openser/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP
-DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES
-DF_MALLOC -DSTATISTICS -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN
-DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL
-DHAVE_ALLOCA_H -DHAVE_TIMEGM -DUSE_SYSV_SEM -DHAVE_SIGIO_RT
-DHAVE_SELECT -c action.c -o action.o
...
Linking openser
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -L/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-rpath-link,/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-O1 action.o core_stats.o crc.o daemonize.o data_lump.o
data_lump_rpl.o dprint.o dset.o error.o fifo_server.o flags.o
forward.o io_wait.o ip_addr.o items.o items_extra.o main.o md5.o
md5utils.o modparam.o msg_translator.o pass_fd.o proxy.o qvalue.o re.o
receive.o resolve.o route.o route_struct.o script_cb.o serialize.o
socket_info.o sr_module.o statistics.o tcp_main.o tcp_read.o timer.o
tsend.o udp_server.o unixsock_server.o usr_avp.o mem/f_malloc.o
mem/mem.o mem/memtest.o mem/q_malloc.o mem/shm_mem.o mem/vq_malloc.o
parser/hf.o parser/msg_parser.o parser/parse_allow.o
parser/parse_content.o parser/parse_cseq.o parser/parse_disposition.o
parser/parse_diversion.o parser/parse_event.o parser/parse_expires.o
parser/parse_fline.o parser/parse_from.o parser/parse_hname2.o
parser/parse_hostport.o parser/parse_methods.o parser/parse_nameaddr.o
parser/parse_param.o parser/parse_refer_to.o parser/parse_rpid.o
parser/parse_rr.o parser/parse_sipifmatch.o parser/parse_sst.o
parser/parse_supported.o parser/parse_to.o parser/parse_uri.o
parser/parse_via.o parser/parser_f.o parser/digest/digest.o
parser/digest/digest_parser.o parser/digest/param_parser.o
parser/contact/contact.o parser/contact/parse_contact.o db/db.o
db/db_fifo.o db/db_id.o db/db_pool.o lex.yy.o cfg.tab.o -ldl
-lresolv -o openser
...
make[1]: Entering directory
`/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/work/openser-1.1.0-notls-r0/openser-1.1.0-notls/mod
ules/sl'
Compiling sl.c
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -fPIC -DPIC
-isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include
-Os -fomit-frame-pointer -frename-registers -fno-unroll-loops
-fno-inline-functions -fweb -funit-at-a-time -DNAME='"openser"'
-DVERSION='"1.1.0-notls"' -DARCH='"armeb"' -DOS='"linux"'
-DCOMPILER='"ccache 3.4.4"' -D__CPU_armeb -D__OS_linux -D__SMP_no
-DCFG_DIR='"/etc/openser/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP
-DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES
-DF_MALLOC -DSTATISTICS -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN
-DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL
-DHAVE_ALLOCA_H -DHAVE_TIMEGM -DUSE_SYSV_SEM -DHAVE_SIGIO_RT
-DHAVE_SELECT -c sl.c -o sl.o
...
Linking sl.so
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -shared
-L/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-rpath-link,/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-O1 sl.o sl_cb.o sl_funcs.o -o sl.so
Here's the output of the nm -D for openser:
root@LKG7BE78E:/usr/sbin# nm -D /usr/sbin/openser
U _IO_getc
00066f38 R _IO_stdin_used
w _Jv_RegisterClasses
U __assert_fail
U __ctype_b_loc
w __deregister_frame_info
U __dn_expand
U __errno_location
U __fxstat
w __gmon_start__
00089000 A __init_array_end
00089000 A __init_array_start
U __libc_current_sigrtmax
U __libc_current_sigrtmin
U __libc_start_main
U __lxstat
w __register_frame_info
U __res_init
U __res_search
U __res_state
U __xstat
U abort
U accept
U alarm
U atoi
U bind
U chdir
U chmod
U chown
U chroot
U clearerr
U close
U closelog
U connect
U ctime
U difftime
U dlclose
U dlerror
U dlopen
U dlsym
U exit
U fclose
U fcntl
U fdopen
U ferror
U fflush
U fgets
U fileno
U fopen
U fork
U fprintf
U fputc
U fputs
U fread
U free
U freopen
U fscanf
U fwrite
U getcwd
U geteuid
U getgrnam
U gethostbyaddr
U gethostbyname
U gethostbyname2
U getopt
U getpgid
U getpid
U getprotobyname
U getpwnam
U getrlimit
U getsockname
U getsockopt
U inet_pton
U ioctl
U isatty
U kill
U listen
U malloc
U memchr
U memcmp
U memcpy
U memmove
U memset
U mkfifo
U mktime
U mmap
U munmap
U open
U openlog
0008b444 B optarg
0008b434 B opterr
0008b448 B optopt
U pathconf
U pause
U perror
U poll
U printf
U putchar
U puts
U rand
U read
U realloc
U recv
U recvfrom
U recvmsg
U regcomp
U regexec
U regfree
U select
U semctl
U semget
U semop
U send
U sendmsg
U sendto
U setbuf
U seteuid
U setgid
U setrlimit
U setsid
U setsockopt
U setuid
U sigaddset
U sigdelset
U sigemptyset
U sigismember
U signal
U sigprocmask
U sigtimedwait
U sleep
U snprintf
U socket
U socketpair
U srand
0008b43c B stderr
0008b440 B stdin
0008b438 B stdout
U strcasecmp
U strchr
U strcmp
U strcpy
U strdup
U strerror
U strlen
U strncasecmp
U strncmp
U strncpy
U strtol
U syslog
U system
U time
U uname
U unlink
U vfprintf
U vsnprintf
U wait
U waitpid
U writev
root@LKG7BE78E:/usr/sbin# nm -D /usr/lib/openser/modules/sl.so
U MDStringArray
0000b260 A _DYNAMIC
w _Jv_RegisterClasses
0000b60c A __bss_end__
0000b570 A __bss_start
0000b570 A __bss_start__
w __cxa_finalize
0000b454 D __data_start
w __deregister_frame_info
0000b60c A __end__
U __errno_location
w __gmon_start__
w __register_frame_info
0000b60c A _bss_end__
0000b570 A _edata
0000b60c A _end
00002b68 T _fini
000011e4 T _init
U add_lump_rpl
U build_res_buf_from_sip_req
U crcitt_string_array
U debug
000018b0 T destroy_slcb_lists
U dprint
U err2reason_phrase
0000b460 D exports
U fm_free
U fm_malloc
U get_send_socket
U get_ticks
U log_facility
U log_stderr
U mem_block
U mem_lock
U memcmp
U memcpy
U memset
U mhomed
0000b4e8 D mod_stats
0000b560 D module_flags
0000b564 D module_version
0000b5e4 B modules
U parse_headers
0000b5e0 B pgid_file
0000b5f0 B pid_file
U prev_ser_error
U print_dset
0000b600 B rcv_acks
U register_script_cb
00001900 T register_slcb
U reply_to_via
000019e0 T run_sl_callbacks
U semop
0000b5f4 B sent_err_rpls
0000b5ec B sent_rpls
U shm_block
0000b45c D sl_enable_stats
00002868 T sl_filter_ACK
000026a8 T sl_reply_error
00001f58 T sl_send_reply
00001ef0 T sl_shutdown
00001d3c T sl_startup
0000b58c B slcb_hl
U stat_lock
U strerror
U strlen
U syslog
U tcp_disable
0000b608 B tcp_listen
U tcp_send
0000b5d8 B tx_1xx_rpls
0000b5d4 B tx_2xx_rpls
0000b5dc B tx_3xx_rpls
0000b5f8 B tx_4xx_rpls
0000b5e8 B tx_5xx_rpls
0000b5fc B tx_6xx_rpls
0000b604 B udp_listen
U udp_send
U update_sock_struct_from_via
root@LKG7BE78E:/usr/sbin#
A similar problem was encounter and fixed for OpenBSD ....
Any help would be greatly appreciated.
-ovi
Hi,
I find something about prepaid system for my SERWeb. In fact, I want to
print the price of communication in the accounting page for my final
customers.
I'm thinking about develop myself a db with price by minute and do the
calcul on demand in accounting page. But if something already exist, can
you tell me more about it ?
Thanks
Hi list,
in numerous example configuration files, I saw the following statement
(where "route(1)" is the final routing block):
% if (loose_route()) {
% route(1);
% }
%
% ...
%
% route(1);
It works for me, but I am just wondering what causes the loose_route()
function to return a failure ? In this case, it seems number of actions
used to be performed before calling the final message routing block.
Naturally, I checked the rr module documentation, but the descriptions is
very small and only refers to RFC 3161. I have read some parts of this
RFC, thus I know what loose routing means (basically, it uses always the
same URI all along the proxy string, removing IP addresses in the Route
header gradually, contrariwise to strict routing which puts the real URI
at the end of the Route header and use the next proxy as URI). In spite
of this, I cannot figure why this function should fail.
I'm pretty confident this is to help for the scripting logic, and I was
supplied with some explanations.
Thank you.
Regards,
--
Jeremie Le Hen
< jeremie at le-hen dot org >< ttz at chchile dot org >