DragonFly On-Line Manual Pages
dracauth(3) DragonFly Library Functions Manual dracauth(3)
NAME
dracauth - Dynamic Relay Authorization Control client interface
SYNOPSIS
cc [ flag ... ] file ... -ldrac [ library ... ]
MT-LEVEL
Unsafe
DESCRIPTION
Dynamic Relay Authorization Control uses Berkeley db package to
maintain a relay authorization map for sendmail. POP and IMAP mail
servers make an RPC call to add an entry to the authorization cache
after they have authenticated each user.
Routines
dracauth(char *server, unsigned long userip, char **errmsg);
dracconn(char *server, char **errmsg);
dracsend(unsigned long userip, char **errmsg);
dracdisc(char **errmsg);
dracauth() sends a request to the server running on host server
to authorize SMTP relaying from IP address userip. It does the
connect, send, and disconnect in one operation. errmsg is the
address of an uninitialized character pointer. If this
parameter is non-NULL, dracauth() will store a pointer to an
error message at this location.
dracconn() initiates an RPC connection to the server running on
host server. errmsg is the address of an uninitialized
character pointer. If this parameter is non-NULL, dracconn()
will store a pointer to an error message at this location.
dracsend() sends a request over the RPC connection to authorize
SMTP relaying from IP address userip. errmsg is the address of
an uninitialized character pointer. If this parameter is non-
NULL, dracsend() will store a pointer to an error message at
this location.
dracdisc() terminates the RPC connection. errmsg is the address
of an uninitialized character pointer. If this parameter is
non-NULL, dracdisc() will store a pointer to an error message at
this location.
RETURN VALUES
All integer functions return 0 if the requested operation is
successful, or non-zero and an error message pointer if the operation
failed.
FILES
libdrac.a
SEE ALSO
rpc.dracd(1m)
NOTES
This interface is unsafe in multithreaded applications. Unsafe
interfaces should be called only from the main thread.
22 Jul 1998 dracauth(3)