📄 vpopmail5.abw
字号:
<p>next directory or sub directory and store the new users directory</p><p>there. </p><p></P></p><p><P>Look in the source code release directory contrib/ for a</p><p>contributed directory reorganization program.</p><p></P></p><p><H3>Internationalization</H3></p><p><P>There is two messages that get inserted into emails. These are</p><p>both for bounced messages. The first is for no such user and the</p><p>second is for user over quota. Site administrators can customize</p><p>these messages by creating a .over-quota.msg and .no-user.msg file in</p><p>a virtual domain directory or in the main virtual domain directory.</p><p>If a .over-quota.msg file or .no-user.msg file are not found in the</p><p>virtual domain directory, then they are checked for in the main</p><p>virtual domain directory. If they are not found there, then the</p><p>default compiled message is included in the bounce message.</P></p><p><H3>dot-qmail processing</H3></p><p><P STYLE="margin-bottom: 0in">Every virtualdomain get's it's own</p><p>directory under ~vpopmail/domains. Qmail's user/assign file gets an</p><p>entry for each domain that</P></p><p><P STYLE="margin-bottom: 0in">points qmail-local deliveries into this</p><p>directory. Therefore, all normal .qmail file processing works in each</p><p>virtual domain. .qmail files just need the user name extension to</p><p>work, i.e. .qmail-joe for user joe. Ezmlm uses .qmail files for</p><p>processing, so it will work under vpopmail.</P></p><p><P STYLE="margin-bottom: 0in"><BR></p><p></P></p><p><P>If no user matches a .qmail file then the .qmail-default file is</p><p>processed. This file contains the vdelivermail program. This program</p><p>reads the authentication database (mysql or vpasswd.cdb) and</p><p>deliveres the mail into the users directory. The last parameter of</p><p>vdelivermail can be a maildir owned by vpopmail/vchkpw so that all</p><p>default mail reception ends up there. Or it can have an email</p><p>address, and all default mail is forwarded to this address. Last but</p><p>not least, the last parameter to vdelivermail can be the text</p><p><FONT FACE="courier, monospace">bounce-no-mailbox.</FONT><FONT FACE="times, serif"></p><p>This will bounce all non matching emails back to the sender.</FONT></P></p><p><H3>qmailadmin</H3></p><p><P STYLE="margin-bottom: 0in">Qmailadmin provides a web based</p><p>interface for managing vpopmail domains. As of version 0.26, it uses</p><p>the vpopmail api. Which means it can manage mysql or vpasswd.cdb</p><p>authentication. It allows for adding pop users, managing</p><p>forwards/aliases, ezmlm mailing lists and autoresponders.</P></p><p><H3>sqwebmail</H3></p><p><P STYLE="margin-bottom: 0in">Sqwebmail is a web based email client.</p><p>It reads and writes directly to the users Maildirs. It can talk to</p><p>vpopmail vpasswd files. We have a modified version of 0.24 on</p><p><A HREF="http://www.inter7.com/vpopmail">http://www.inter7.com/vpopmail</A></p><p>which uses vpopmail api. It also supports setting the users password</p><p>and lets the user forward their mail. Hopefully these changes will be</p><p>intergrated into the standard distribution :)</P></p><p><H3>courier-imap</H3></p><p><P STYLE="margin-bottom: 0in">Courier-imap is a IMAP server that</p><p>supports Maildirs. It's current release supports vpopmail vpasswd</p><p>files. We will be integrating the vpopmail api into the main</p><p>distribution soon.</P></p><p><H3>mysql authentication</H3></p><p><P STYLE="margin-bottom: 0in"><BR></p><p></P></p><p><H3>cdb authentication</H3></p><p><P STYLE="margin-bottom: 0in"><BR></p><p></P></p><p><H3><A name="vpopmail-api">vpopmail API</a></H3></p><p><P>As of version 3.4.10 vpopmail builds a library located in</p><p>~vpopmail/lib/libvpopmail.a . Linking this library into your</p><p>application will provide access to the following C functions. The</p><p>associated header files are located in ~vpopmail/include.</P></p><p><H4>int vadddomain( char *domain)</H4></p><p><DL></p><p> <DD>domain = the new virtual domain</DD><DD STYLE="margin-bottom: 0.2in"></p><p> <BR><BR></p><p> </DD></DL></p><p><H4></p><p>int vdeldomain( char *domain )</H4></p><p><DL></p><p> <DD STYLE="margin-bottom: 0.2in">domain = virtual domain to delete</DD></DL></p><p><H4></p><p>int vadduser( char *user, char *domain, char *password, int apop)</H4></p><p><DL></p><p> <DD>user = new user name</DD><DD></p><p> domain = virtual domain</DD><DD></p><p> password = clear text password</DD><DD STYLE="margin-bottom: 0.2in"></p><p> apop = 0 for pop and 1 for apop</DD></DL></p><p><H4></p><p>int vdeluser( char *user, char *domain)</H4></p><p><DL></p><p> <DD>user = user to delete</DD><DD STYLE="margin-bottom: 0.2in"></p><p> domain = virtual domain</DD></DL></p><p><H4></p><p>int vpasswd( char *user, char *domain, char *password)</H4></p><p><DL></p><p> <DD>user = user to change password for</DD><DD></p><p> domain = virtual domain</DD><DD STYLE="margin-bottom: 0.2in"></p><p> password = clear text password </p><p> </DD></DL></p><p><H4></p><p>int vsetuserquota( char *user, char *domain, char *quota)</H4></p><p><DL></p><p> <DD>user = user name to change quota for</DD><DD></p><p> domain = virtual domain</DD><DD STYLE="margin-bottom: 0.2in"></p><p> char = quota in bytes. M/m and K/k abbrieviations apply. 5M 5m and</p><p> 5000000 all equal 5 million bytes hard quota</DD></DL></p><p><H3></p><p>vpopmail authentication API</H3></p><p><H4>int vauth_addomain( char *domain)</H4></p><p><DL></p><p> <DD STYLE="margin-bottom: 0.2in">domain = domain name to add to</p><p> authentication system</DD></DL></p><p><H4></p><p>int vauth_deldomain( char *domain)</H4></p><p><DL></p><p> <DD STYLE="margin-bottom: 0.2in">domain = domain name to delete from</p><p> authentication system</DD></DL></p><p><H4></p><p>int vauth_adduser( char *user, char *domain, char *crypted_password,</p><p>char *dir, int apop)</H4></p><p><DL></p><p> <DD>user = user to add from authentication system</DD><DD></p><p> domain = domain name</DD><DD></p><p> crypted_password = encrypted password</DD><DD></p><p> dir = full path to directory where users Maildir is stored.</DD><DD STYLE="margin-bottom: 0.2in"></p><p> apop = 0 for POP and 1 for APOP</DD></DL></p><p><H4></p><p>int vauth_deluser( char *user, char *domain)</H4></p><p><DL></p><p> <DD>user = user to delete from authentication system</DD><DD STYLE="margin-bottom: 0.2in"></p><p> domain = domain name</DD></DL></p><p><H4></p><p>int vauth_password( char *user, char *domain, char *crypted_password)</H4></p><p><DL></p><p> <DD>user = user to change password in authentication system</DD><DD></p><p> domain = domain name</DD><DD STYLE="margin-bottom: 0.2in"></p><p> crypted_password = the encrypted password</DD></DL></p><p><H4></p><p>int vauth_setquota( char *user, char *domain, char *quota)</H4></p><p><DL></p><p> <DD>user = user to set quota for in authentication system</DD><DD></p><p> domain = domain name</DD><DD STYLE="margin-bottom: 0.2in"></p><p> quota = quota in bytes or using M/m or K/k abbrieviations. 5M = 5m =</p><p> 5000000 </p><p> </DD></DL></p><p><H4></p><p>struct *passwd vauth_getpw( char *user, char *domain)</H4></p><p><DL></p><p> <DD>user = user name to retrieve password entry from authentication</p><p> system</DD><DD STYLE="margin-bottom: 0.2in"></p><p> domain = domain name</DD></DL></p><p><H4></p><p>int vauth_setpw( struct *passwd, char *domain)</H4></p><p><DL></p><p> <DD>passwd = pointer to a passwd structure to store in</p><p> authentication system. </p><p> </DD><DD STYLE="margin-bottom: 0.2in"></p><p> domain = domain name for this passwd structure</DD></DL></p><p><H4></p><p>struct *vauth_user( char *user, char *domain, char *password, char</p><p>*apop)</H4></p><p><DL></p><p> <DD>user = user name to authenticate</DD><DD></p><p> domain = domain name</DD><DD></p><p> password = clear text password</DD><DD STYLE="margin-bottom: 0.2in"></p><p> apop = not used in version 3.4.10</DD></DL></p><p><H4></p><p>struct *vauth_getall( char *domain, int first, int sort_it )</H4></p><p><DL></p><p> <DD>domain = domain name to retrieve password structure from</p><p> authentication system</DD><DD></p><p> first = 1 to get first record, 0 = get next record </p><p> </DD><DD></p><p> sort_it = 1 to have the user list sorted alphabetically. This has no</p><p> effect on vpasswd/cdb method, since all users are added</p><p> alphabetically. With mysql it adds an order by pw_name to the query.</DD></DL></p><p><P STYLE="margin-bottom: 0in"></p><p><BR></p><p></P></p><p></BODY></p><p></HTML></p><p></p></section></abiword>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -