From: Pierangelo Masarati Date: Fri, 15 Jul 2005 16:22:21 +0000 (+0000) Subject: move to attic... X-Git-Tag: OPENLDAP_AC_BP~393 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=e1ad1c6e2229ade692fcc41df479933273e90227;p=openldap move to attic... --- diff --git a/doc/man/man5/slapd-tcl.5 b/doc/man/man5/slapd-tcl.5 deleted file mode 100644 index 32c341c436..0000000000 --- a/doc/man/man5/slapd-tcl.5 +++ /dev/null @@ -1,271 +0,0 @@ -.TH SLAPD-TCL 5 "RELEASEDATE" "OpenLDAP LDVERSION" -.\" $OpenLDAP$ -.SH NAME -slapd-tcl \- Tcl backend to slapd -.SH SYNOPSIS -ETCDIR/slapd.conf -.SH DESCRIPTION -The Tcl backend to -.BR slapd (8) -works by embedding a -.BR Tcl (3tcl) -interpreter into -.BR slapd (8). -Any tcl database section of the configuration file -.BR slapd.conf (5) -must then specify what Tcl script to use. -.LP -This backend is experimental. -.SH WARNING -.B "This backend's calling conventions have changed since OpenLDAP 2.0." -Previously, the 2nd argument to the procs was a message ID. -Now they are an "operation ID" string. -Also, proc abandon now gets a new -.B abandonid -argument. -.SH CONFIGURATION -These -.B slapd.conf -options apply to the TCL backend database. -That is, they must follow a "database tcl" line and come before any -subsequent "backend" or "database" lines. -Other database options are described in the -.BR slapd.conf (5) -manual page. -.TP -.B scriptpath -The full path to the tcl script used for this database. -.LP -.B search -.br -.B add -.br -.B delete -.br -.B modify -.br -.B bind -.br -.B unbind -.br -.B modrdn -.br -.B compare -.br -.B abandon -.RS -The procs for each ldap function. -They refer to the tcl procs in the `scriptpath' script that handles them. -.RE -.TP -.B tclrealm -This is one of the biggest pluses of using the tcl backend. -The realm lets you group several databases to the same interpreter. -This basically means they share the same global variables and proc space. -So global variables, as well as all the procs, are callable between databases. -If no tclrealm is specified, it is put into the "default" realm. -.SH Variables passed to the procs -.TP -.B abandon { action opid suffix abandonid } -.nf -action - Always equal to ABANDON. -opid - The opid of this ldap operation. -suffix - List of suffix(es) associated with the - call. Each one is an entry in a tcl - formatted list (surrounded by {}'s). -abandonid - The opid of the operation to abandon. -.fi -.TP -.B add "{ action opid suffix entry }" -.nf -action - Always equal to ADD. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -entry - Full entry to add. Each "type: val" is - an element in a tcl formatted list. -.fi -.TP -.B bind "{ action opid suffix dn method cred_len cred }" -.nf -action - Always equal to BIND. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -dn - DN being bound to. -method - One of the ldap authentication methods. -cred_len - Length of cred. -cred - Credentials being used to authenticate, - according to RFC. If this value is empty, - then it should be considered an anonymous - bind (??) -.fi -.TP -.B compare "{ action opid suffix dn ava_type ava_value }" -.nf -action - Always equal to COMPARE. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -dn - DN for compare. -ava_type - Type for comparison. -ava_value - Value to compare. -.fi -.TP -.B delete "{ action opid suffix dn }" -.nf -action - Always equal to DELETE. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -dn - DN to delete. -.fi -.TP -.B modify "{ action opid suffix dn mods }" -.nf -action - Always equal to MODIFY. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -dn - DN to modify. -mods - Tcl list of modifications. - The list is formatted in this way: - - { - { {op: type} {type: val} } - { {op: type} {type: val} {type: val} } - ... - } - - Newlines are not present in the actual var, - they are present here for clarification. - "op" is the type of modification - (ADD, DELETE, REPLACE). -.fi -.TP -.B modrdn "{ action opid suffix dn newrdn deleteoldrdn }" -.nf -action - Always equal to MODRDN. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -dn - DN whose RDN is being renamed. -newrdn - New RDN. -deleteoldrdn - Boolean stating whether or not the - old RDN should be removed after being renamed. -.fi -.TP -.B -search { action opid suffix base scope deref \ -sizelimit timelimit filterstr attrsonly attrlist } -.nf -action - Always equal to SEARCH. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -base - Base for this search. -scope - Scope of search, ( 0 | 1 | 2 ). -deref - Alias dereferencing ( 0 | 1 | 2 | 3 ). -sizelimit - Maximum number of entries to return. -timelimit - Time limit for search. -filterstr - Filter string as sent by the requester. -attrsonly - Boolean for whether to list only the - attributes, and not values as well. -attrlist - Tcl list if to retrieve. -.fi -.TP -.B unbind "{ action opid suffix dn }" -.nf -action - Always equal to UNBIND. -opid - The opid of this ldap operation. -suffix - List of suffix(es), as above. -dn - DN to unbind. -.fi -.LP -An -.I opid -(operation ID) is a "connection ID/message ID" string identifying an -operation. -.LP -.SH Return Method and Syntax -There are only 2 return types. -All procs must return a result to show status of the operation. -The result is in this form: -.LP -.RS -.nf -{ RESULT {code: } {matched: } - {info: } {} } -.fi -.RE -.LP -This is best accomplished with this type of tcl code -.LP -.RS -.nf - lappend ret_val "RESULT" - lappend ret_val "code: 0" - lappend ret_val "" - return $ret_val -.fi -.RE -.LP -The final empty string (item in list) is necessary to point to the end -of list. -The `code', `matched', and `info' values are not necessary, and -default values are given if not specified. -The `code' value is usually an LDAP error in decimal notation from -ldap.h. -The `info', may be sent back to the client, depending on the -function. -In the bind proc, LDAP uses the value of `code' to indicate whether or -not the authentication is acceptable. -.LP -The other type of return is for searches. -It is similar format to the shell backend return (as is most of the -syntax here). -Its format follows: -.LP -.RS -.nf -{dn: o=Company, c=US} {attr: val} {objectclass: val} {} -{dn: o=CompanyB, c=US} {attr: val} {objectclass: val} {} -.fi -.RE -.LP -Again, newlines are for visual purposes here. -Also note the {} marking the end of the entry (same effect as a -newline in ldif format). -Here is some example code again, showing a full search proc example. -.LP -.RS -.nf -# Note that `args' lets you lump all possible args -# into one var, used here for simplicity of example -proc ldap:search { args } { - # ...perform some operations... - - lappend ret_val "dn: $rdn,$base" - lappend ret_val "objectclass: $objcl" - lappend ret_val "sn: $rdn" - lappend ret_val "mail: $email" - lappend ret_val "" - # Now setup the result - lappend ret_val "RESULT" - lappend ret_val "code: 0" - lappend ret_val "" - return $ret_val -} -.fi -.RE -.LP -NOTE: Newlines in the return value is acceptable in search entries -(i.e. when returning base64 encoded binary entries). -.LP -.SH Builtin Commands and Variables -.TP -.B ldap:debug -Allows you to send debug messages through OpenLDAP's native debugging -system, this is sent as a LDAP_DEBUG_ANY and will be logged. -Useful for debugging scripts or logging bind failures. -.SH FILES -.TP -ETCDIR/slapd.conf -default slapd configuration file -.SH SEE ALSO -.BR slapd.conf (5), -.BR slapd (8), -.BR Tcl (3tcl).