On Thu, 26 Feb 2009 13:19:06 +0200, <t...@kalik.net> wrote:

Can you show some examples please? I try to do like this:

    noresetBytecounter

    if (reject) {
        update reply {
            Reply-Message := "Traffic limit exceeded."
        }
    }

but if noresetBytecounter return reject freeradius immediatly return
reject
to user and do not process 'if' clause

  You need to put this in the "post-auth" section, "Reject" subsection.
 See the example configuration files.


/etc/freeradius/sites-enabled/default[412]: "SQL Counter" modules aren't
allowed in 'post-auth' sections -- they have no such method.


Don't put the counter there but the counter attribute:

if(control:Counter-Attribute < 0) { ...


Sorry, i read mans and comments in config and try to do like you say but it's not work as i need. I have sqlcounter:
sqlcounter noresetBytecounter {
        counter-name = Total-Max-Octets
        check-name = Max-Octets
        reply-name = ChilliSpot-Max-Total-Octets
        sqlmod-inst = sql
        key = User-Name
        reset = never
query = "SELECT (SUM(AcctInputOctets)+SUM(AcctOutputOctets)) FROM radacct WHERE UserName='%{%k}'"
}

post-auth section in sites-enabled/default:
    Post-Auth-Type REJECT {
        attr_filter.access_reject

        if (control:Max-Octets > 0) {
            update reply {
                Reply-Message := "Traffic limit exceeded."
            }
        }

    }

so, what exactly name must be in control: ? As you can see i try to put Max-Octets, but seems that attribute simly loaded from mysql (even if password wrong and no traffic overlimit occures there 'Traffic limit exceeded.' error message returned) and it's always greater than zero. I try counter:ChilliSpot-Max-Total-Octets but got:

Attribute control:ChilliSpot-Max-Total-Octets was not found

in debug. Sorry but i something missunderstand in general, please put me on right way.



--
ISP CrIS, Softwarium
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to