]> git.sur5r.net Git - openldap/blobdiff - include/rewrite.h
Fix multiple NAME example
[openldap] / include / rewrite.h
index 58315bc84e133eea438c58357557c194809f4e47..08398420c05c4c0e3bdbfd950c31000605373a75 100644 (file)
@@ -17,7 +17,7 @@
  * 3. Altered versions must be plainly marked as such, and must not be
  * misrepresented as being the original software.  Since few users
  * ever read sources, credits should appear in the documentation.
- * 
+ *
  * 4. This notice may not be removed or altered.
  *
  ******************************************************************************/
@@ -25,8 +25,6 @@
 #ifndef REWRITE_H
 #define REWRITE_H
 
-LDAP_BEGIN_DECL
-
 /*
  * Default rewrite context
  */
@@ -49,7 +47,7 @@ LDAP_BEGIN_DECL
 /*
  * Rewrite modes (input values for rewrite_info_init); determine the
  * behavior in case a null or non existent context is required:
- * 
+ *
  *     REWRITE_MODE_ERR                error
  *     REWRITE_MODE_OK                 no error but no rewrite
  *     REWRITE_MODE_COPY_INPUT         a copy of the input is returned
@@ -62,7 +60,7 @@ LDAP_BEGIN_DECL
 
 /*
  * Rewrite status returns
- * 
+ *
  *     REWRITE_REGEXEC_OK              success (result may be empty in case
  *                                     of no match)
  *     REWRITE_REGEXEC_ERR             error (internal error,
@@ -80,12 +78,15 @@ LDAP_BEGIN_DECL
  * Rewrite info
  */
 struct rewrite_info;
-struct berval;
+
+struct berval; /* avoid include */
+
+LDAP_BEGIN_DECL
 
 /*
  * Inits the info
  */
-extern struct rewrite_info *
+LDAP_REWRITE_F (struct rewrite_info *)
 rewrite_info_init(
                int mode
 );
@@ -93,7 +94,7 @@ rewrite_info_init(
 /*
  * Cleans up the info structure
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_info_delete(
                 struct rewrite_info *info
 );
@@ -110,7 +111,7 @@ rewrite_info_delete(
  *      rewriteMap             mapType mapName [mapArgs]
  *      rewriteParam           paramName paramValue
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_parse(
                struct rewrite_info *info,
                 const char *fname,
@@ -119,6 +120,15 @@ rewrite_parse(
                 char **argv
 );
 
+/*
+ * process a config file that was already opened. Uses rewrite_parse.
+ */
+LDAP_REWRITE_F (int)
+rewrite_read(
+               FILE *fin,
+               struct rewrite_info *info
+);
+
 /*
  * Rewrites a string according to context.
  * If the engine is off, OK is returned, but the return string will be NULL.
@@ -129,12 +139,12 @@ rewrite_parse(
  *
  * What to do in case of non-existing rewrite context is still an issue.
  * Four possibilities:
- *      - error, 
- *      - ok with NULL result, 
+ *      - error,
+ *      - ok with NULL result,
  *      - ok with copy of string as result,
  *      - use the default rewrite context.
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite(
                struct rewrite_info *info,
                const char *rewriteContext,
@@ -145,7 +155,7 @@ rewrite(
 /*
  * Same as above; the cookie relates the rewrite to a session
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_session(
                struct rewrite_info *info,
                const char *rewriteContext,
@@ -157,7 +167,7 @@ rewrite_session(
 /*
  * Inits a session
  */
-extern struct rewrite_session *
+LDAP_REWRITE_F (struct rewrite_session *)
 rewrite_session_init(
                 struct rewrite_info *info,
                 const void *cookie
@@ -166,7 +176,7 @@ rewrite_session_init(
 /*
  * Defines and inits a variable with session scope
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_session_var_set(
                struct rewrite_info *info,
                const void *cookie,
@@ -177,7 +187,7 @@ rewrite_session_var_set(
 /*
  * Deletes a session
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_session_delete(
                struct rewrite_info *info,
                const void *cookie
@@ -191,7 +201,7 @@ rewrite_session_delete(
 /*
  * Defines and inits a variable with global scope
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_param_set(
                 struct rewrite_info *info,
                 const char *name,
@@ -201,17 +211,17 @@ rewrite_param_set(
 /*
  * Gets a var with global scope
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_param_get(
                 struct rewrite_info *info,
                 const char *name,
                 struct berval *value
 );
 
-/* 
+/*
  * Destroys the parameter tree
  */
-extern int
+LDAP_REWRITE_F (int)
 rewrite_param_destroy(
                 struct rewrite_info *info
 );
@@ -219,4 +229,3 @@ rewrite_param_destroy(
 LDAP_END_DECL
 
 #endif /* REWRITE_H */
-