<login> <+|-><SMARTTIME>|<SSMARTTIME>|<TCSMARTTIME>| <SMARTBOOT>|<SSMARTBOOT>|<TCSMARTBOOT>| <ISMARTBOOT>|<WARNBOOT>|<EXPLAINBOOT>|<NOUNSUB>|<0-15>
<login> <maxLogins>|<maxDeduct> <+=|-=|=> <n>
<login> <idleLimit>|<PPPidleBytes>|<PPPidleMIn> <+=|-=|=> <n>
<login> <tLeft>|<tLimit>|<credit>|<sLeft>|<sLimit> <+=|-=|=> <minutes>
<login> <cLeft>|<cLimit> <class> <+=|-=|=> <minutes>
<login> <bTx>|<bRx>|<bTxLimit>|<bRxLimit>|<bLimit>| <bStxLimit>|<bSrxLimit>|<bSlimit> <+=|-=|=> <bytes>
<login> priority = <priority>
<login> ph_no = <ph_no>
<login> expire <+=|-=|=> <expire>
The -s switch can be used to strictly enforce setting of "time left" fields within their corresponding limits. For example, if you set tLeft > tLimit, acua modRec will set tLeft = tLimit. This switch is mostly intended to support "time bank" functionality (see the HOWTO for more information).
In the first usage, directly change the expiry date and time limits of a user. See acua addRec for a description of the arguments.
In the second usage, flags are modified. Flags are asserted with + and de-asserted with -, as you might expect. The flags 0-15 are user-defined flags (meaning that you define their meaning/purpose). Currently, acua forEach and acua renew are capable of basing their actions on the value of user-defined flags.
The system-defined flags are:
SMARTTIMEIn the remaining usages, specific fields are modified. Fields may be incremented (+=), decremented (-=), or directly changed (=). The fields are:
Don't deduct time unless the system is busy.SSMARTTIME
Don't deduct session time unless the system is busy.TCSMARTTIME
Don't deduct time in the current time class unless the system is busy.SMARTBOOT
If overall time runs out, the user may still be allowed to stay on the system provided it is not busy.SSMARTBOOT
If session time runs out, the user may still be allowed to stay on the system provided it is not busy.TCSMARTBOOT
If the user runs out of time in the current time class, they may still be allowed to stay on the system provided it is not busy.ISMARTBOOT
If there is an idle time limit in effect for the user which has been exceeded, they may still be allowed to stay on the system provided it is not busy.WARNBOOT
The user may be warned of imminent disconnection.EXPLAINBOOT
The user may be sent e-mail explaining the reason for disconnection.NOUNSUB
When the user is due to be unsubscribed, the script /usr/sbin/acua_nounsub will be executed instead. See the example script for more info.NOTE: See the BusyTreshold section in acua.config for a description of when the system is considered to be busy.
Examples:
Example 1: acua modRec foo tLimit = 60 will change a users daily time limit to 60 minutes a day.Example 2: acua modRec foo tLeft = 5 will set the users total time left to 5 minutes.
Example 3: acua modRec foo expire += 15 will give foo 15 more days on his ACUA record. So, for example, if foo's account was going to expire in 5 days time, it will now expire in 20 days time.
Example 4: acua modRec foo expire -= 15 will make foo's account expire 15 days earlier than it is supposed to. If the user had 20 days on his/her account, he/she will now have 5 days.
Example 5: acua modRec foo PPPidleBytes = 0 will disable the Idle Kick-off timer for the user foo.
Example 6: acua modRec foo +SMARTTIME will enable SmartTime for this user.
Example 7: acua modRec foo -SMARTTIME will disable SmartTime for this user.
Example 8: acua modRec foo +0 will turn on User-Defined flag 0.
Example 9: acua modRec foo -0 will turn off User-Defined flag 0.
I hope you've got the hang of acua modRec now!