[Serusers] Alternative to Mysql?

Jan Janak jan at iptel.org
Thu Mar 13 01:15:26 CET 2003


Hello David,

attached please find updated ser.cfg with authentication enabled using
plaintext files instead of mysql.

Do the following:
1) Get the latest CVS snapshot (yes, again)
2) Compile it, but do not install it (don't do make install)
3) Create a directory where your plaintext files containing database
   tables will be stored
4) Put attached "subscriber" and "location" files in the directory
5) Edit attached ser.cfg
6) Replace /home/janakj/ser with path to the directory (2 occurrencies)
7) save ser.cfg in sip_router directory (the CVS snaphot)
7) Edit subscriber and replace jan with your username, heslo with your
   password and iptel.org with your domain
8) cd sip_router
9) ./ser -f ser.cfg

Please report any problems to us.

   Jan.

PS: See sip_router/modules/dbtext/Readme for description of format of
    the plaintext files.

On 12-03 13:57, David Beckemeyer wrote:
> 
> Unstable indeed. I built SER from CVS and even using the
> stock (no DB) ser.cfg, it won't start, and reports:
> 
>   ERROR: bad config file (16 errors)
> 
>   ser: parse error (36,13-47): failed to load module
>   ser: set_mod_param(): Parameter not found
>   ser: parse error (46,34-35): Can't set module parameter
>   ser: parse error (70,36-37): unknown command, missing loadmodule?
>   ser: parse error (71,38-39): unknown command, missing loadmodule?
>   ser: parse error (75,41-42): unknown command, missing loadmodule?
>   ser: parse error (80,19-20): unknown command, missing loadmodule?
>   ser: parse error (95,19-20): unknown command, missing loadmodule?
>   ser: parse error (100,25-26): unknown command, missing loadmodule?
>   ser: parse error (101,36-37): unknown command, missing loadmodule?
>   ser: parse error (106,15-16): unknown command, missing loadmodule?
>   ser: parse error (107,18-19): unknown command, missing loadmodule?
>   ser: INFO: signal 15 received
> 
> On Wed, Mar 12, 2003 at 08:40:04PM +0100, Daniel-Constantin MIERLA wrote:
> > 
> > 
> > Hello,
> > see dbtext for that. But notice that the module has not been thoroughly 
> > tested. It is not included in v0.8.10 so you have to use a CVS snapshot 
> > which is quite unstable these days due to lots of changes. If you want 
> > to use it before the new release of ser is out you might get weird 
> > situations, but you can provide us some help with testing ... It is your 
> > choice ...
> > 
> > -.-
> > Best regards,
> > Daniel
> > 
> > 
> > David Beckemeyer wrote:
> > 
> > >I'm trying to get SER up and I need auth.  I'm not a Mysql user
> > >and, frankly, I'd rather not need to learn it, just to get 
> > >authentication support.  I wish there were a middle-ground 
> > >between no-auth at all and a full-blown Mysql installation.
> > >
> > >I tried the Cookbook approach, using Dan Austin's HOWTO for
> > >setting up Mysql for SER, but the commands do not work as shown
> > >so I'm left with learning Mysql through and through to debug 
> > >why those cookbook commands don't work.
> > >
> > >I'm very familiar with SIP and I want to test SER, not a new Sql 
> > >server DB engine.  It seems like Mysql is a distraction to that 
> > >effort.
> > >
> > >Is anyone working on something like a flat-file module to
> > >replace Mysql?  Any pointers for the best place to start on
> > >developing such a module (i.e. shortcuts)?
> > >
> > >Thanks,
> > >
> > > - david
> > >
> > >_______________________________________________
> > >Serusers mailing list
> > >serusers at lists.iptel.org
> > >http://lists.iptel.org/mailman/listinfo/serusers
> > >
> > > 
> > >
> > 
> > 
> > 
> > _______________________________________________
> > Serusers mailing list
> > serusers at lists.iptel.org
> > http://lists.iptel.org/mailman/listinfo/serusers
> _______________________________________________
> Serusers mailing list
> serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
-------------- next part --------------
#
# $Id: dbtext.cfg,v 1.2 2003/03/13 00:07:28 janakj Exp $
#
# simple quick-start config script
#

# ----------- global configuration parameters ------------------------

debug=3          # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no	# (cmd line: -E)

/*
debug=7
fork=no
log_stderror=yes
*/

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 "./modules/dbtext/dbtext.so"

loadmodule "./modules/sl/sl.so"
loadmodule "./modules/tm/tm.so"
loadmodule "./modules/rr/rr.so"
loadmodule "./modules/maxfwd/maxfwd.so"
loadmodule "./modules/usrloc/usrloc.so"
loadmodule "./modules/registrar/registrar.so"

# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "./modules/auth/auth.so"
loadmodule "./modules/auth_db/auth_db.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", 1)
modparam("usrloc", "db_url", "/home/janakj/ser")
modparam("auth_db", "db_url", "/home/janakj/ser")

# -- auth params --
# Uncomment if you are using auth module
#
modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this config), 
# uncomment also the following parameter)
#
modparam("auth_db", "password_column", "password")

# -------------------------  request routing logic -------------------

# main routing logic

route{

	# initial sanity checks -- messages with
	# max_forwards==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");
		break;
	};

	# Do strict routing if pre-loaded route headers present
	loose_route();

	# 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==myself) {

		if (method=="REGISTER") {
			if (!www_authorize("", "subscriber")) {
				www_challenge("", "0");
				break;
			};

			save("location");
			break;
		};

		# native SIP destinations are handled using our USRLOC DB
		if (!lookup("location")) {
			sl_send_reply("404", "Not Found");
			break;
		};
	};
	# forward to current uri now
	if (!t_relay()) {
		sl_reply_error();
	};

}

-------------- next part --------------
user(str) contact(str) expires(int) q(double) callid(str) cseq(int)
-------------- next part --------------
username(str) password(str) ha1(str) domain(str) ha1b(str)
jan:heslo:xxx:iptel.org:xxx

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20030313/7dd41f84/attachment.pgp>


More information about the sr-users mailing list