Bill,

I think there is different syntax for this, I used to
use something like:

if(len_gt(max_len))
{
}

But, I don't check for max length any more. Operating system assembly/disassembly for packets bigger than the mtu is transparent to me, I often work with big packets. Also, the mtu is different depending on where you look. I think some of the gig-ethernets use jumbo packets, then there is the 1500 byte or so regular mtu, then there is also possible modifications to the mtu depending on what the local transport is (cable,
dsl, frame relay, etc).

I still check for max hops :-)

-g

On Sep 12, 2006, at 8:38 PM, Bill Zhang wrote:

OK, I solved the problem(though I don't understand how it solved) by adding
alias=" sip.mydomain.com", thanks to my old experience with SER:).

Bill
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf
Of Bill Zhang
Sent: Tuesday, September 12, 2006 2:18 PM
To: [email protected]
Subject: RE: [Users] 513 Message too big

It does not help me here:(. I will get "Too Many Hops" (SIP response 483),
it's something that seems to get my SIP message stuck in the first 2
routines.

Bill
-----Original Message-----
From: Ka Lun Chan (KC) [mailto:[EMAIL PROTECTED]
Sent: Tuesday, September 12, 2006 1:04 PM
To: 'Bill Zhang'
Subject: RE: [Users] 513 Message too big

I have the exact problem. I fixed by changing it to the following instead:

        if (msg:len >=  max_len ) {
                sl_send_reply("513", "Message too big");
                return;
        };

KC
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf
Of Bill Zhang
Sent: Tuesday, September 12, 2006 12:59 PM
To: [email protected]
Subject: [Users] 513 Message too big

Hi,

I've exhausted my knowledge on openser:(. Following is my openser.cfg which is pretty much copy directly from sample but I kept getting "513 Message too
big" response from this server for SIP registration, I know the SIP
registration message size is ONLY 555 bytes, what could be wrong here?

Thanks in Advance!

#
# $Id: openser.cfg,v 1.6 2006/02/15 18:23:46 bogdan_iancu Exp $
#
# simple quick-start config script
#

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

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

/* Uncomment these lines to enter debugging mode
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/openser_fifo"

#
# uncomment the following lines for TLS support
#disable_tls = 0
#listen = tls:your_IP:5061
#tls_verify = 1
#tls_require_certificate = 0
#tls_method = TLSv1
#tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"

# ------------------ module loading ----------------------------------

# Uncomment this if you want to use SQL database
loadmodule "/usr/local/lib64/openser/modules/mysql.so"
loadmodule "/usr/local/lib64/openser/modules/sl.so"
loadmodule "/usr/local/lib64/openser/modules/tm.so"
loadmodule "/usr/local/lib64/openser/modules/rr.so"
loadmodule "/usr/local/lib64/openser/modules/maxfwd.so"
loadmodule "/usr/local/lib64/openser/modules/usrloc.so"
loadmodule "/usr/local/lib64/openser/modules/registrar.so"
loadmodule "/usr/local/lib64/openser/modules/textops.so"
loadmodule "/usr/local/lib64/openser/modules/auth.so"
loadmodule "/usr/local/lib64/openser/modules/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", 2)
modparam("usrloc", "db_url", "mysql://openser:[EMAIL PROTECTED]/ openser")

# -- auth params --
# Uncomment if you are using auth module
#
modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
modparam("auth_db", "db_url", "mysql://openser:[EMAIL PROTECTED]/ openser")

# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)

# -------------------------  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");
                exit;
        };

        if (msg:len >=  2048 ) {
                sl_send_reply("513", "Message too big");
                exit;
        };

        # we record-route all messages -- to make sure that
        # subsequent messages will go through our proxy; that's
        # particularly good if upstream and downstream entities
        # use different transport protocol
        if (!method=="REGISTER")
                record_route();

        # subsequent messages withing a dialog should take the
        # path determined by record-routing
        if (loose_route()) {
                # mark routing logic in request
                append_hf("P-hint: rr-enforced\r\n");
                route(1);
        };

        if (!uri==myself) {
                # mark routing logic in request
                append_hf("P-hint: outbound\r\n");
                # if you have some interdomain connections via TLS
                #if(uri=~"@tls_domain1.net") {
                #       t_relay("tls:domain1.net");
                #       exit;
                #} else if(uri=~"@tls_domain2.net") {
                #       t_relay("tls:domain2.net");
                #       exit;
                #}
                route(1);
        };

        # 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("sip.mydomain.com",
"subscriber")) {
www_challenge("sip.mydomain.com", "0");
                                exit;
                        };

                        save("location");
                        exit;
                };

                lookup("aliases");
                if (!uri==myself) {
                        append_hf("P-hint: outbound alias\r\n");
                        route(1);
                };

# native SIP destinations are handled using our USRLOC DB
                if (!lookup("location")) {
                        sl_send_reply("404", "Not Found");
                        exit;
                };
                append_hf("P-hint: usrloc applied\r\n");
        };

        route(1);
}


route[1] {
# send it out now; use stateful forwarding as it works reliably
        # even for UDP2TCP
        if (!t_relay()) {
                sl_reply_error();
        };
        exit;
}

Bill


_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users


_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users


_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users


_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users

Reply via email to