#Posting limits for users # The requirements for this new format, in order of importance, are: # Readable, Powerful and Compact. # I believe I've failed in making this readable, and it's not as powerful as # another idea I had for the config, but it's powerful enough, and it is # compact. # # This file is basically line oriented, but declarations can be split across # several lines by a few methods: # Most widely used will be enclosing everything in french braces ('{' and '}'). # The largest restriction with these is that braces enclose an entire logical # part of a declaration. Braces must match. # The second way to split up a declaration over several lines is to use a # continuation character, '\'. This character on the end of the line logically # joins the two seperate lines, allowing an escape from the line-oriented # nature of this file. Anywhere else in the line, it is not treated specially. # # Elements of a declaration are broken up into logical parts by the parser. # There can be several different kinds of parsers for several different kinds # of declarations, and the elements are broken up hierarchically by # hierarchical parsers. The "format:" description above each line describes # the logical parts of the declaration. # Aliases (format: alias : # = ([+-|] [!] )* # = | $ alias maintainer: alph@panix.com + aidan@panix.com # Groups (format: group ([@default.domain])+: ) group faqits@panix.com: { faq-poster-1 + faq-poster-2 + faq-poster-3 } group moderators@panix.com: { moderator1 + moderator2 + moderator3 } # Limits (format: limit [] [ ...]: ) # = | "" # = "NOT" # = "AND" | "OR" # = "user" | "group" | "dest" # When all the tests are satisfied, variables which are used in internal tests # are set to the specified value. # default limit group *: { #Post , # posts are slowed down after messages, and stopped after # + messages. Post 50,50 #Crosspost # Indicates the number of newsgroups this user can crosspost to. Crosspost 8 # special limits for user groups limit group faqits: Crosspost -1; Follow-up 3 limit group moderators: Post unlimited # special limits for individual users # (Post -1,-1 is synonymous with Post unlimited) limit user user2@panix.com: Post -1,-1 limit user user2@panix.com: Crosspost 10; Follow-up 10 } # Usenet 2 limit group * AND dest net.* : DB u2 : { # Rule of Three (apparently allows really large crossposts as long as # followups are small) Crosspost 10; Follow-up 3 # Posting requires permission Emily /usr/local/news/doc/usenet2.doc } # Special users who don't have to be stored in the database. limit user maintainer: NoCheck #don't accept posts from users we couldn't identify, or who haven't identified #themselves to us. I would like to change this to tell the user #"480 Authentication required for command" before they even send the message #to us (that is, right after issuing the "POST" command), but nnrpd doesn't #yet have the necessary infrastructure. limit NOT group *: { Post 0,0 errmsg Post : "Don't accept posts from unknown users." } #things which are the same for all users: limit group *: { # Notification always gets sent out at 10 messages Notify 10 NotifyMessage /usr/local/news/doc/warning.msg # Newsgroups between which crossposts can't occur. CrossGroups : (net.*),(panix.*),(*,!net.*,!panix.*) }