Sophie

Sophie

distrib > Fedora > 17 > i386 > media > updates > by-pkgid > 675c8c8167236dfcf8d66da674f931e8 > files > 791

erlang-doc-R15B-03.3.fc17.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns:fn="http://www.w3.org/2005/02/xpath-functions">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../doc/otp_doc.css" type="text/css">
<title>Erlang -- mod_auth</title>
</head>
<body bgcolor="white" text="#000000" link="#0000ff" vlink="#ff00ff" alink="#ff0000"><div id="container">
<script id="js" type="text/javascript" language="JavaScript" src="../../../../doc/js/flipmenu/flipmenu.js"></script><script id="js2" type="text/javascript" src="../../../../doc/js/erlresolvelinks.js"></script><script language="JavaScript" type="text/javascript">
            <!--
              function getWinHeight() {
                var myHeight = 0;
                if( typeof( window.innerHeight ) == 'number' ) {
                  //Non-IE
                  myHeight = window.innerHeight;
                } else if( document.documentElement && ( document.documentElement.clientWidth ||
                                                         document.documentElement.clientHeight ) ) {
                  //IE 6+ in 'standards compliant mode'
                  myHeight = document.documentElement.clientHeight;
                } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
                  //IE 4 compatible
                  myHeight = document.body.clientHeight;
                }
                return myHeight;
              }

              function setscrollpos() {
                var objf=document.getElementById('loadscrollpos');
                 document.getElementById("leftnav").scrollTop = objf.offsetTop - getWinHeight()/2;
              }

              function addEvent(obj, evType, fn){
                if (obj.addEventListener){
                obj.addEventListener(evType, fn, true);
                return true;
              } else if (obj.attachEvent){
                var r = obj.attachEvent("on"+evType, fn);
                return r;
              } else {
                return false;
              }
             }

             addEvent(window, 'load', setscrollpos);

             //--></script><div id="leftnav"><div class="innertube">
<img alt="Erlang logo" src="../../../../doc/erlang-logo.png"><br><small><a href="users_guide.html">User's Guide</a><br><a href="index.html">Reference Manual</a><br><a href="release_notes.html">Release Notes</a><br><a href="../pdf/inets-5.9.2.pdf">PDF</a><br><a href="../../../../doc/index.html">Top</a></small><p><strong>inets</strong><br><strong>Reference Manual</strong><br><small>Version 5.9.2</small></p>
<br><a href="javascript:openAllFlips()">Expand All</a><br><a href="javascript:closeAllFlips()">Contract All</a><p><small><strong>Table of Contents</strong></small></p>
<ul class="flipMenu">
<li id="no" title="inets " expanded="false">inets<ul>
<li><a href="inets.html">
                  Top of manual page
                </a></li>
<li title="services-0"><a href="inets.html#services-0">services/0</a></li>
<li title="services_info-0"><a href="inets.html#services_info-0">services_info/0</a></li>
<li title="service_names-0"><a href="inets.html#service_names-0">service_names/0</a></li>
<li title="start-0"><a href="inets.html#start-0">start/0</a></li>
<li title="start-1"><a href="inets.html#start-1">start/1</a></li>
<li title="stop-0"><a href="inets.html#stop-0">stop/0</a></li>
<li title="start-2"><a href="inets.html#start-2">start/2</a></li>
<li title="start-3"><a href="inets.html#start-3">start/3</a></li>
<li title="stop-2"><a href="inets.html#stop-2">stop/2</a></li>
</ul>
</li>
<li id="no" title="ftp " expanded="false">ftp<ul>
<li><a href="ftp.html">
                  Top of manual page
                </a></li>
<li title="account-2"><a href="ftp.html#account-2">account/2</a></li>
<li title="append-2"><a href="ftp.html#append-2">append/2</a></li>
<li title="append-3"><a href="ftp.html#append-3">append/3</a></li>
<li title="append_bin-3"><a href="ftp.html#append_bin-3">append_bin/3</a></li>
<li title="append_chunk-2"><a href="ftp.html#append_chunk-2">append_chunk/2</a></li>
<li title="append_chunk_start-2"><a href="ftp.html#append_chunk_start-2">append_chunk_start/2</a></li>
<li title="append_chunk_end-1"><a href="ftp.html#append_chunk_end-1">append_chunk_end/1</a></li>
<li title="cd-2"><a href="ftp.html#cd-2">cd/2</a></li>
<li title="close-1"><a href="ftp.html#close-1">close/1</a></li>
<li title="delete-2"><a href="ftp.html#delete-2">delete/2</a></li>
<li title="formaterror-1"><a href="ftp.html#formaterror-1">formaterror/1</a></li>
<li title="lcd-2"><a href="ftp.html#lcd-2">lcd/2</a></li>
<li title="lpwd-1"><a href="ftp.html#lpwd-1">lpwd/1</a></li>
<li title="ls-1"><a href="ftp.html#ls-1">ls/1</a></li>
<li title="ls-2"><a href="ftp.html#ls-2">ls/2</a></li>
<li title="mkdir-2"><a href="ftp.html#mkdir-2">mkdir/2</a></li>
<li title="nlist-1"><a href="ftp.html#nlist-1">nlist/1</a></li>
<li title="nlist-2"><a href="ftp.html#nlist-2">nlist/2</a></li>
<li title="open-1"><a href="ftp.html#open-1">open/1</a></li>
<li title="open-2"><a href="ftp.html#open-2">open/2</a></li>
<li title="pwd-1"><a href="ftp.html#pwd-1">pwd/1</a></li>
<li title="pwd-1"><a href="ftp.html#pwd-1">pwd/1</a></li>
<li title="recv-2"><a href="ftp.html#recv-2">recv/2</a></li>
<li title="recv-3"><a href="ftp.html#recv-3">recv/3</a></li>
<li title="recv_bin-2"><a href="ftp.html#recv_bin-2">recv_bin/2</a></li>
<li title="recv_chunk_start-2"><a href="ftp.html#recv_chunk_start-2">recv_chunk_start/2</a></li>
<li title="recv_chunk-1"><a href="ftp.html#recv_chunk-1">recv_chunk/1</a></li>
<li title="rename-3"><a href="ftp.html#rename-3">rename/3</a></li>
<li title="rmdir-2"><a href="ftp.html#rmdir-2">rmdir/2</a></li>
<li title="send-2"><a href="ftp.html#send-2">send/2</a></li>
<li title="send-3"><a href="ftp.html#send-3">send/3</a></li>
<li title="send_bin-3"><a href="ftp.html#send_bin-3">send_bin/3</a></li>
<li title="send_chunk-2"><a href="ftp.html#send_chunk-2">send_chunk/2</a></li>
<li title="send_chunk_start-2"><a href="ftp.html#send_chunk_start-2">send_chunk_start/2</a></li>
<li title="send_chunk_end-1"><a href="ftp.html#send_chunk_end-1">send_chunk_end/1</a></li>
<li title="type-2"><a href="ftp.html#type-2">type/2</a></li>
<li title="user-3"><a href="ftp.html#user-3">user/3</a></li>
<li title="user-4"><a href="ftp.html#user-4">user/4</a></li>
<li title="quote-2"><a href="ftp.html#quote-2">quote/2</a></li>
</ul>
</li>
<li id="no" title="tftp " expanded="false">tftp<ul>
<li><a href="tftp.html">
                  Top of manual page
                </a></li>
<li title="start-1"><a href="tftp.html#start-1">start/1</a></li>
<li title="read_file-3"><a href="tftp.html#read_file-3">read_file/3</a></li>
<li title="write_file-3"><a href="tftp.html#write_file-3">write_file/3</a></li>
<li title="info-1"><a href="tftp.html#info-1">info/1</a></li>
<li title="info-1"><a href="tftp.html#info-1">info/1</a></li>
<li title="info-1"><a href="tftp.html#info-1">info/1</a></li>
<li title="change_config-2"><a href="tftp.html#change_config-2">change_config/2</a></li>
<li title="change_config-2"><a href="tftp.html#change_config-2">change_config/2</a></li>
<li title="change_config-2"><a href="tftp.html#change_config-2">change_config/2</a></li>
<li title="start-0"><a href="tftp.html#start-0">start/0</a></li>
<li title="prepare-6"><a href="tftp.html#prepare-6">prepare/6</a></li>
<li title="open-6"><a href="tftp.html#open-6">open/6</a></li>
<li title="read-1"><a href="tftp.html#read-1">read/1</a></li>
<li title="write-2"><a href="tftp.html#write-2">write/2</a></li>
<li title="abort-3"><a href="tftp.html#abort-3">abort/3</a></li>
<li title="error_msg-2"><a href="tftp.html#error_msg-2">error_msg/2</a></li>
<li title="warning_msg-2"><a href="tftp.html#warning_msg-2">warning_msg/2</a></li>
<li title="info_msg-2"><a href="tftp.html#info_msg-2">info_msg/2</a></li>
</ul>
</li>
<li id="no" title="httpc " expanded="false">httpc<ul>
<li><a href="httpc.html">
                  Top of manual page
                </a></li>
<li title="request-1"><a href="httpc.html#request-1">request/1</a></li>
<li title="request-2"><a href="httpc.html#request-2">request/2</a></li>
<li title="request-4"><a href="httpc.html#request-4">request/4</a></li>
<li title="request-5"><a href="httpc.html#request-5">request/5</a></li>
<li title="cancel_request-1"><a href="httpc.html#cancel_request-1">cancel_request/1</a></li>
<li title="cancel_request-2"><a href="httpc.html#cancel_request-2">cancel_request/2</a></li>
<li title="set_options-1"><a href="httpc.html#set_options-1">set_options/1</a></li>
<li title="set_options-2"><a href="httpc.html#set_options-2">set_options/2</a></li>
<li title="get_options-1"><a href="httpc.html#get_options-1">get_options/1</a></li>
<li title="get_options-2"><a href="httpc.html#get_options-2">get_options/2</a></li>
<li title="stream_next-1"><a href="httpc.html#stream_next-1">stream_next/1</a></li>
<li title="store_cookies-2"><a href="httpc.html#store_cookies-2">store_cookies/2</a></li>
<li title="store_cookies-3"><a href="httpc.html#store_cookies-3">store_cookies/3</a></li>
<li title="cookie_header-1"><a href="httpc.html#cookie_header-1">cookie_header/1</a></li>
<li title="cookie_header-2"><a href="httpc.html#cookie_header-2">cookie_header/2</a></li>
<li title="cookie_header-3"><a href="httpc.html#cookie_header-3">cookie_header/3</a></li>
<li title="reset_cookies-0"><a href="httpc.html#reset_cookies-0">reset_cookies/0</a></li>
<li title="reset_cookies-1"><a href="httpc.html#reset_cookies-1">reset_cookies/1</a></li>
<li title="which_cookies-0"><a href="httpc.html#which_cookies-0">which_cookies/0</a></li>
<li title="which_cookies-1"><a href="httpc.html#which_cookies-1">which_cookies/1</a></li>
<li title="which_sessions-0"><a href="httpc.html#which_sessions-0">which_sessions/0</a></li>
<li title="which_sessions-1"><a href="httpc.html#which_sessions-1">which_sessions/1</a></li>
<li title="info-0"><a href="httpc.html#info-0">info/0</a></li>
<li title="info-1"><a href="httpc.html#info-1">info/1</a></li>
</ul>
</li>
<li id="no" title="httpd " expanded="false">httpd<ul>
<li><a href="httpd.html">
                  Top of manual page
                </a></li>
<li title="info-1"><a href="httpd.html#info-1">info/1</a></li>
<li title="info-2"><a href="httpd.html#info-2">info/2</a></li>
<li title="info-2"><a href="httpd.html#info-2">info/2</a></li>
<li title="info-3"><a href="httpd.html#info-3">info/3</a></li>
<li title="reload_config-2"><a href="httpd.html#reload_config-2">reload_config/2</a></li>
<li title="Module:do-1"><a href="httpd.html#Module:do-1">Module:do/1</a></li>
<li title="Module:load-2"><a href="httpd.html#Module:load-2">Module:load/2</a></li>
<li title="Module:store-2"><a href="httpd.html#Module:store-2">Module:store/2</a></li>
<li title="Module:remove-1"><a href="httpd.html#Module:remove-1">Module:remove/1</a></li>
<li title="parse_query-1"><a href="httpd.html#parse_query-1">parse_query/1</a></li>
</ul>
</li>
<li id="no" title="httpd_conf " expanded="false">httpd_conf<ul>
<li><a href="httpd_conf.html">
                  Top of manual page
                </a></li>
<li title="check_enum-2"><a href="httpd_conf.html#check_enum-2">check_enum/2</a></li>
<li title="clean-1"><a href="httpd_conf.html#clean-1">clean/1</a></li>
<li title="custom_clean-3"><a href="httpd_conf.html#custom_clean-3">custom_clean/3</a></li>
<li title="is_directory-1"><a href="httpd_conf.html#is_directory-1">is_directory/1</a></li>
<li title="is_file-1"><a href="httpd_conf.html#is_file-1">is_file/1</a></li>
<li title="make_integer-1"><a href="httpd_conf.html#make_integer-1">make_integer/1</a></li>
</ul>
</li>
<li id="no" title="httpd_socket " expanded="false">httpd_socket<ul>
<li><a href="httpd_socket.html">
                  Top of manual page
                </a></li>
<li title="deliver-3"><a href="httpd_socket.html#deliver-3">deliver/3</a></li>
<li title="peername-2"><a href="httpd_socket.html#peername-2">peername/2</a></li>
<li title="resolve-0"><a href="httpd_socket.html#resolve-0">resolve/0</a></li>
</ul>
</li>
<li id="no" title="httpd_util " expanded="false">httpd_util<ul>
<li><a href="httpd_util.html">
                  Top of manual page
                </a></li>
<li title="convert_request_date-1"><a href="httpd_util.html#convert_request_date-1">convert_request_date/1</a></li>
<li title="create_etag-1"><a href="httpd_util.html#create_etag-1">create_etag/1</a></li>
<li title="decode_hex-1"><a href="httpd_util.html#decode_hex-1">decode_hex/1</a></li>
<li title="day-1"><a href="httpd_util.html#day-1">day/1</a></li>
<li title="flatlength-1"><a href="httpd_util.html#flatlength-1">flatlength/1</a></li>
<li title="hexlist_to_integer-1"><a href="httpd_util.html#hexlist_to_integer-1">hexlist_to_integer/1</a></li>
<li title="integer_to_hexlist-1"><a href="httpd_util.html#integer_to_hexlist-1">integer_to_hexlist/1</a></li>
<li title="lookup-2"><a href="httpd_util.html#lookup-2">lookup/2</a></li>
<li title="lookup-3"><a href="httpd_util.html#lookup-3">lookup/3</a></li>
<li title="lookup_mime-2"><a href="httpd_util.html#lookup_mime-2">lookup_mime/2</a></li>
<li title="lookup_mime-3"><a href="httpd_util.html#lookup_mime-3">lookup_mime/3</a></li>
<li title="lookup_mime_default-2"><a href="httpd_util.html#lookup_mime_default-2">lookup_mime_default/2</a></li>
<li title="lookup_mime_default-3"><a href="httpd_util.html#lookup_mime_default-3">lookup_mime_default/3</a></li>
<li title="message-3"><a href="httpd_util.html#message-3">message/3</a></li>
<li title="month-1"><a href="httpd_util.html#month-1">month/1</a></li>
<li title="multi_lookup-2"><a href="httpd_util.html#multi_lookup-2">multi_lookup/2</a></li>
<li title="reason_phrase-1"><a href="httpd_util.html#reason_phrase-1">reason_phrase/1</a></li>
<li title="rfc1123_date-0"><a href="httpd_util.html#rfc1123_date-0">rfc1123_date/0</a></li>
<li title="rfc1123_date-2"><a href="httpd_util.html#rfc1123_date-2">rfc1123_date/2</a></li>
<li title="split-3"><a href="httpd_util.html#split-3">split/3</a></li>
<li title="split_script_path-1"><a href="httpd_util.html#split_script_path-1">split_script_path/1</a></li>
<li title="split_path-1"><a href="httpd_util.html#split_path-1">split_path/1</a></li>
<li title="strip-1"><a href="httpd_util.html#strip-1">strip/1</a></li>
<li title="suffix-1"><a href="httpd_util.html#suffix-1">suffix/1</a></li>
</ul>
</li>
<li id="no" title="mod_alias " expanded="false">mod_alias<ul>
<li><a href="mod_alias.html">
                  Top of manual page
                </a></li>
<li title="default_index-2"><a href="mod_alias.html#default_index-2">default_index/2</a></li>
<li title="path-3"><a href="mod_alias.html#path-3">path/3</a></li>
<li title="real_name-3"><a href="mod_alias.html#real_name-3">real_name/3</a></li>
<li title="real_script_name-3"><a href="mod_alias.html#real_script_name-3">real_script_name/3</a></li>
</ul>
</li>
<li id="loadscrollpos" title="mod_auth " expanded="true">mod_auth<ul>
<li><a href="mod_auth.html">
                  Top of manual page
                </a></li>
<li title="add_user-2"><a href="mod_auth.html#add_user-2">add_user/2</a></li>
<li title="add_user-5"><a href="mod_auth.html#add_user-5">add_user/5</a></li>
<li title="add_user-6"><a href="mod_auth.html#add_user-6">add_user/6</a></li>
<li title="delete_user-2"><a href="mod_auth.html#delete_user-2">delete_user/2</a></li>
<li title="delete_user-3"><a href="mod_auth.html#delete_user-3">delete_user/3</a></li>
<li title="delete_user-4"><a href="mod_auth.html#delete_user-4">delete_user/4</a></li>
<li title="get_user-2"><a href="mod_auth.html#get_user-2">get_user/2</a></li>
<li title="get_user-3"><a href="mod_auth.html#get_user-3">get_user/3</a></li>
<li title="get_user-4"><a href="mod_auth.html#get_user-4">get_user/4</a></li>
<li title="list_users-1"><a href="mod_auth.html#list_users-1">list_users/1</a></li>
<li title="list_users-2"><a href="mod_auth.html#list_users-2">list_users/2</a></li>
<li title="list_users-3"><a href="mod_auth.html#list_users-3">list_users/3</a></li>
<li title="add_group_member-3"><a href="mod_auth.html#add_group_member-3">add_group_member/3</a></li>
<li title="add_group_member-4"><a href="mod_auth.html#add_group_member-4">add_group_member/4</a></li>
<li title="add_group_member-5"><a href="mod_auth.html#add_group_member-5">add_group_member/5</a></li>
<li title="delete_group_member-3"><a href="mod_auth.html#delete_group_member-3">delete_group_member/3</a></li>
<li title="delete_group_member-4"><a href="mod_auth.html#delete_group_member-4">delete_group_member/4</a></li>
<li title="delete_group_member-5"><a href="mod_auth.html#delete_group_member-5">delete_group_member/5</a></li>
<li title="list_group_members-2"><a href="mod_auth.html#list_group_members-2">list_group_members/2</a></li>
<li title="list_group_members-3"><a href="mod_auth.html#list_group_members-3">list_group_members/3</a></li>
<li title="list_group_members-4"><a href="mod_auth.html#list_group_members-4">list_group_members/4</a></li>
<li title="list_groups-1"><a href="mod_auth.html#list_groups-1">list_groups/1</a></li>
<li title="list_groups-2"><a href="mod_auth.html#list_groups-2">list_groups/2</a></li>
<li title="list_groups-3"><a href="mod_auth.html#list_groups-3">list_groups/3</a></li>
<li title="delete_group-2"><a href="mod_auth.html#delete_group-2">delete_group/2</a></li>
<li title="delete_group-4"><a href="mod_auth.html#delete_group-4">delete_group/4</a></li>
<li title="update_password-5"><a href="mod_auth.html#update_password-5">update_password/5</a></li>
<li title="update_password-6"><a href="mod_auth.html#update_password-6">update_password/6</a></li>
</ul>
</li>
<li id="no" title="mod_esi " expanded="false">mod_esi<ul>
<li><a href="mod_esi.html">
                  Top of manual page
                </a></li>
<li title="deliver-2"><a href="mod_esi.html#deliver-2">deliver/2</a></li>
<li title="Module:Function-3"><a href="mod_esi.html#Module:Function-3">Module:Function/3</a></li>
<li title="Module:Function-2"><a href="mod_esi.html#Module:Function-2">Module:Function/2</a></li>
</ul>
</li>
<li id="no" title="mod_security " expanded="false">mod_security<ul>
<li><a href="mod_security.html">
                  Top of manual page
                </a></li>
<li title="list_auth_users-1"><a href="mod_security.html#list_auth_users-1">list_auth_users/1</a></li>
<li title="list_auth_users-2"><a href="mod_security.html#list_auth_users-2">list_auth_users/2</a></li>
<li title="list_auth_users-2"><a href="mod_security.html#list_auth_users-2">list_auth_users/2</a></li>
<li title="list_auth_users-3"><a href="mod_security.html#list_auth_users-3">list_auth_users/3</a></li>
<li title="list_blocked_users-1"><a href="mod_security.html#list_blocked_users-1">list_blocked_users/1</a></li>
<li title="list_blocked_users-2"><a href="mod_security.html#list_blocked_users-2">list_blocked_users/2</a></li>
<li title="list_blocked_users-2"><a href="mod_security.html#list_blocked_users-2">list_blocked_users/2</a></li>
<li title="list_blocked_users-3"><a href="mod_security.html#list_blocked_users-3">list_blocked_users/3</a></li>
<li title="block_user-4"><a href="mod_security.html#block_user-4">block_user/4</a></li>
<li title="block_user-5"><a href="mod_security.html#block_user-5">block_user/5</a></li>
<li title="unblock_user-2"><a href="mod_security.html#unblock_user-2">unblock_user/2</a></li>
<li title="unblock_user-3"><a href="mod_security.html#unblock_user-3">unblock_user/3</a></li>
<li title="unblock_user-3"><a href="mod_security.html#unblock_user-3">unblock_user/3</a></li>
<li title="unblock_user-4"><a href="mod_security.html#unblock_user-4">unblock_user/4</a></li>
<li title="event-4"><a href="mod_security.html#event-4">event/4</a></li>
<li title="event-5"><a href="mod_security.html#event-5">event/5</a></li>
</ul>
</li>
<li id="no" title="http_uri " expanded="false">http_uri<ul>
<li><a href="http_uri.html">
                  Top of manual page
                </a></li>
<li title="scheme_defaults-0"><a href="http_uri.html#scheme_defaults-0">scheme_defaults/0</a></li>
<li title="parse-1"><a href="http_uri.html#parse-1">parse/1</a></li>
<li title="parse-2"><a href="http_uri.html#parse-2">parse/2</a></li>
<li title="encode-1"><a href="http_uri.html#encode-1">encode/1</a></li>
<li title="decode-1"><a href="http_uri.html#decode-1">decode/1</a></li>
</ul>
</li>
</ul>
</div></div>
<div id="content">
<div class="innertube">
<!-- refpage --><center><h1>mod_auth</h1></center>
  
  <h3>MODULE</h3>
<div class="REFBODY">mod_auth</div>
  <h3>MODULE SUMMARY</h3>
<div class="REFBODY">User authentication using text files, dets or mnesia database.</div>
  <h3>DESCRIPTION</h3>
<div class="REFBODY"><p>
    <p>This module provides for basic user authentication using
    textual files, dets databases as well as mnesia databases. </p>

    <a name="add_user"></a>
  </p></div>

  <h3>EXPORTS</h3>
    <p><a name="add_user-2"><span class="bold_code">add_user(UserName, Options) -&gt;  true| {error, Reason}</span></a><br><a name="add_user-5"><span class="bold_code">add_user(UserName, Password, UserData, Port, Dir) -&gt; true | {error, Reason}</span></a><br><a name="add_user-6"><span class="bold_code">add_user(UserName, Password, UserData, Address, Port, Dir) -&gt; true | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">UserName     = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Options     = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option      = {password,Password} | {userData,UserData} | {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Password     = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">UserData     = term()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword =string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="user_api"></a>
        <a name="add_user"></a>
        <p><span class="code">add_user/2, add_user/5</span> and <span class="code">add_user/6</span> adds a 
	user to the user 
	database. If the operation is successful, this function returns 
	<span class="code">true</span>. If an error occurs, <span class="code">{error,Reason}</span> is returned. 
	When <span class="code">add_user/2</span> is called the Password, 
	UserData Port and Dir options is mandatory.</p>

	<a name="delete_user"></a>
      </p></div>

    <p><a name="delete_user-2"><span class="bold_code">delete_user(UserName,Options)  -&gt; true | {error, Reason}</span></a><br><a name="delete_user-3"><span class="bold_code">delete_user(UserName, Port, Dir) -&gt; true | {error, Reason}</span></a><br><a name="delete_user-4"><span class="bold_code">delete_user(UserName, Address, Port, Dir) -&gt; true | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">UserName     = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="delete_user"></a>
        <p><span class="code">delete_user/2, delete_user/3</span> and <span class="code">delete_user/4</span> 
	deletes a user from the user database. 
	If the operation is successful, this function returns <span class="code">true</span>. 
	If an error occurs, <span class="code">{error,Reason}</span> is returned. 
	When <span class="code">delete_user/2</span> is called the Port and Dir options 
	are mandatory.</p>

	<a name="get_user"></a>
      </p></div>

    <p><a name="get_user-2"><span class="bold_code">get_user(UserName,Options) -&gt; {ok, #httpd_user} |{error, Reason}</span></a><br><a name="get_user-3"><span class="bold_code">get_user(UserName, Port, Dir) -&gt; {ok, #httpd_user} | {error, Reason}</span></a><br><a name="get_user-4"><span class="bold_code">get_user(UserName, Address, Port, Dir) -&gt; {ok, #httpd_user} | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">UserName     = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="get_user"></a>
        <p><span class="code">get_user/2, get_user/3</span> and <span class="code">get_user/4</span> returns a 
	<span class="code">httpd_user</span> record containing the userdata for a 
	specific user. If the user cannot be found, <span class="code">{error, Reason}</span> 
	is returned. When <span class="code">get_user/2</span> is called the Port and Dir 
	options are mandatory.</p>

	<a name="list_users"></a>
      </p></div>

    <p><a name="list_users-1"><span class="bold_code">list_users(Options) -&gt; {ok, Users} | {error, Reason}</span></a><br><a name="list_users-2"><span class="bold_code">list_users(Port, Dir) -&gt; {ok, Users} | {error, Reason}</span></a><br><a name="list_users-3"><span class="bold_code">list_users(Address, Port, Dir) -&gt; {ok, Users} | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Users        = list()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = atom()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="list_users"></a>
        <p><span class="code">list_users/1, list_users/2</span> and <span class="code">list_users/3</span> 
	returns a list 
	of users in the user database for a specific <span class="code">Port/Dir</span>.
	When <span class="code">list_users/1</span> is called the Port and Dir 
	options are mandatory.</p>

	<a name="add_group_member"></a>
      </p></div>

    <p><a name="add_group_member-3"><span class="bold_code">add_group_member(GroupName, UserName, Options) -&gt; true | {error, Reason}</span></a><br><a name="add_group_member-4"><span class="bold_code">add_group_member(GroupName, UserName, Port, Dir) -&gt; true | {error, Reason}</span></a><br><a name="add_group_member-5"><span class="bold_code">add_group_member(GroupName, UserName, Address, Port, Dir) -&gt; true | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">GroupName    = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">UserName     = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="add_group_member"></a>
        <p><span class="code">add_group_member/3, add_group_member/4</span> and 
	<span class="code">add_group_member/5</span> 
	adds a user to a group. If the group does not exist, it 
	is created and the user is added to the group. Upon successful 
	operation, this function returns <span class="code">true</span>. 
	When <span class="code">add_group_members/3</span> 
	is called the Port and Dir options are mandatory.</p>

	<a name="delete_group_member"></a>
      </p></div>

    <p><a name="delete_group_member-3"><span class="bold_code">delete_group_member(GroupName, UserName, Options) -&gt; true | {error, Reason}</span></a><br><a name="delete_group_member-4"><span class="bold_code">delete_group_member(GroupName, UserName, Port, Dir) -&gt; true | {error, Reason}</span></a><br><a name="delete_group_member-5"><span class="bold_code">delete_group_member(GroupName, UserName, Address, Port, Dir) -&gt; true | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">GroupName    = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">UserName     = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="delete_group_member"></a>
	<p><span class="code">delete_group_member/3, delete_group_member/4</span> and 
	<span class="code">delete_group_member/5</span>  deletes a user from a group. 
	If the group or the user does not exist, 
	this function returns an error, otherwise it returns <span class="code">true</span>.
	When <span class="code">delete_group_member/3</span> is called the Port and Dir options
	are mandatory.</p>

	<a name="list_group_members"></a>
      </p></div>

    <p><a name="list_group_members-2"><span class="bold_code">list_group_members(GroupName, Options) -&gt; {ok, Users} | {error, Reason}</span></a><br><a name="list_group_members-3"><span class="bold_code">list_group_members(GroupName, Port, Dir) -&gt; {ok, Users} | {error, Reason}</span></a><br><a name="list_group_members-4"><span class="bold_code">list_group_members(GroupName, Address, Port, Dir) -&gt; {ok, Users} | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">GroupName    = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Users        = list()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="list_group_members"></a>
        <p><span class="code">list_group_members/2, list_group_members/3</span> and 
	<span class="code">list_group_members/4</span> 
	lists the members of a specified group. If the group does not 
	exist or there is an error, <span class="code">{error, Reason}</span> is returned.
	When <span class="code">list_group_members/2</span> is called the Port and Dir options
	are mandatory.</p>

	<a name="list_groups"></a>
      </p></div>

    <p><a name="list_groups-1"><span class="bold_code">list_groups(Options) -&gt; {ok, Groups} | {error, Reason}</span></a><br><a name="list_groups-2"><span class="bold_code">list_groups(Port, Dir) -&gt; {ok, Groups} | {error, Reason}</span></a><br><a name="list_groups-3"><span class="bold_code">list_groups(Address, Port, Dir) -&gt; {ok, Groups} | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Groups       = list()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="list_groups"></a>
	<p><span class="code">list_groups/1, list_groups/2</span> and <span class="code">list_groups/3</span> 
	lists all the groups available. 
	If there is an error, <span class="code">{error, Reason}</span> is returned. 
	When <span class="code">list_groups/1</span> is called the Port and Dir options
	are mandatory.</p>

	<a name="delete_group"></a>
      </p></div>

    <p><a name="delete_group-2"><span class="bold_code">delete_group(GroupName, Options) -&gt; true | {error,Reason} &lt;name&gt;delete_group(GroupName, Port, Dir) -&gt; true | {error, Reason}</span></a><br><a name="delete_group-4"><span class="bold_code">delete_group(GroupName, Address, Port, Dir) -&gt; true | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">Options      = [Option]</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Option       = {port,Port} | {addr,Address} | {dir,Directory} | {authPassword,AuthPassword}</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">GroupName    = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">AuthPassword = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="delete_group"></a>
	<p><span class="code">delete_group/2, delete_group/3</span> and <span class="code">delete_group/4</span> 
	deletes the group specified and returns <span class="code">true</span>. 
	If there is an error, <span class="code">{error, Reason}</span> is returned. 
	When <span class="code">delete_group/2</span> is called the 
	Port and Dir options are mandatory.</p>

	<a name="update_password"></a>
      </p></div>

    <p><a name="update_password-5"><span class="bold_code">update_password(Port, Dir, OldPassword, NewPassword, NewPassword) -&gt; ok | {error, Reason}</span></a><br><a name="update_password-6"><span class="bold_code">update_password(Address,Port, Dir, OldPassword, NewPassword, NewPassword) -&gt; ok | {error, Reason}</span></a><br></p>
<div class="REFBODY">
<p>Types:</p>
        <div class="REFTYPES">
<span class="bold_code">Port         = integer()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Address      = {A,B,C,D} | string() | undefined</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Dir          = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">GroupName    = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">OldPassword  = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">NewPassword  = string()</span><br>
</div>
        <div class="REFTYPES">
<span class="bold_code">Reason       = term()</span><br>
</div>
      </div>
<div class="REFBODY"><p>
        <a name="update_password"></a>
        <p><span class="code">update_password/5</span> and <span class="code">update_password/6</span> 
	Updates the AuthAccessPassword for the specified directory. 
	If NewPassword is equal to "NoPassword" no password is requires to
	change authorisation data. 
	If NewPassword is equal to "DummyPassword" no changes can be done 
	without changing the password first.</p>
      </p></div>
  

  <h3><a name="id88528">SEE ALSO</a></h3>
<div class="REFBODY">
    <a name="see_also"></a>
    
    <p><span class="bold_code"><a href="httpd.html">httpd(3)</a></span>,
      <span class="bold_code"><a href="mod_alias.html">mod_alias(3)</a></span>,</p>
  </div>
  
</div>
<div class="footer">
<hr>
<p>Copyright © 1997-2012 Ericsson AB. All Rights Reserved.</p>
</div>
</div>
</div></body>
</html>