dsapi_ldif.h

Go to the documentation of this file.
00001 /* Emacs mode: -*- C -*- */
00002 
00003 /* 
00004  * Copyright (c) 2006, Isode Limited, London, England.
00005  * All rights reserved.
00006  *
00007  * Acquisition and use of this software and related materials for any
00008  * purpose requires a written licence agreement from Isode
00009  * Limited, or a written licence from an organisation licenced by Isode
00010  * Limited to grant such a licence.
00011  *
00012  */
00013 
00014 /*
00015  * dsapi_ldif.h
00016  *
00017  * API methods for reading and writing LDIF files.
00018  *
00019  */
00020 
00021 /* 
00022  * $RCSfile: dsapi_ldif.h,v $ $Revision: 1.8 $ $State: Exp $
00023  *
00024  * $Log: dsapi_ldif.h,v $
00025  * Revision 1.8  2007/11/12 18:22:27  jp
00026  * T071112B - Add handling of LDIF-buffer-file mode of access
00027  *
00028  * Revision 1.7  2007/08/06 14:49:27  jp
00029  * T070802F - Add support for 'unknown' attribute-types
00030  *
00031  * Revision 1.6  2007/07/19 16:16:47  jp
00032  * T070718L - Add calls for encoding/decoding LDIF records in memory
00033  *
00034  * Revision 1.5  2007/06/25 10:24:05  jp
00035  * T070622B - New call to write a comment; update other docs
00036  *
00037  * Revision 1.4  2006/11/20 15:16:16  jp
00038  * T061115G - Doc clarifications
00039  *
00040  * Revision 1.3  2006/11/10 13:40:34  cjr
00041  * T061110D - Add \since annotations to functions added since 1.0.
00042  *
00043  * Revision 1.2  2006/11/03 11:55:49  jp
00044  * T061103C - Imitate other dsapi_*.h files: add LIBDSAPI_CDECL + includes
00045  *
00046  * Revision 1.1  2006/10/30 15:21:04  jp
00047  * T061026D - Initial implementation
00048  *
00049  *
00050  */
00051 
00052 #ifndef ISODE_DSAPI_LDIF_H
00053 #define ISODE_DSAPI_LDIF_H
00054 
00055 #include <stddef.h>
00056 #include <sys/stat.h>
00057 #include <isode/ds/dsapi/dsapi_cdecl.h>
00058 #include <isode/ds/dsapi/dsapi_types.h>
00059 
00109 LIBDSAPI_CDECL
00110 DS_Status DS_LDIF_Open (
00111     const char *in_fnam,
00112     const char *out_fnam,
00113     DS_LDIF **ldif_p
00114 );
00115 
00123 LIBDSAPI_CDECL
00124 DS_Status DS_LDIF_Close (
00125     DS_LDIF *ldif
00126 );
00127 
00154 LIBDSAPI_CDECL
00155 DS_Status DS_LDIF_Get (
00156     DS_LDIF *ldif,
00157     DS_Entry **entry_p
00158 );
00159 
00184 LIBDSAPI_CDECL
00185 DS_Status DS_LDIF_GetDN (
00186     DS_LDIF *ldif,
00187     DS_DN **dn_p
00188 );
00189 
00216 LIBDSAPI_CDECL
00217 DS_Status DS_LDIF_GetPut (
00218     DS_LDIF *ldif1,
00219     DS_LDIF *ldif2
00220 );
00221 
00247 LIBDSAPI_CDECL
00248 DS_Status DS_LDIF_Put (
00249     DS_LDIF *ldif,
00250     const DS_Entry *entry
00251 );
00252 
00269 LIBDSAPI_CDECL
00270 DS_Status DS_LDIF_TellOutput (
00271     DS_LDIF *ldif,
00272     off_t *offset_p
00273 );
00274 
00285 LIBDSAPI_CDECL
00286 DS_Status DS_LDIF_Tell (
00287     DS_LDIF *ldif,
00288     off_t *offset_p
00289 );
00290 
00305 LIBDSAPI_CDECL
00306 DS_Status DS_LDIF_Seek (
00307     DS_LDIF *ldif,
00308     off_t offset
00309 );
00310 
00327 LIBDSAPI_CDECL
00328 DS_Status DS_LDIF_ErrorString (
00329     DS_LDIF *ldif,
00330     char **errstr_p
00331 );
00332     
00333 
00348 LIBDSAPI_CDECL
00349 DS_Status DS_LDIF_PutComment (
00350     DS_LDIF *ldif,
00351     const char *str
00352 );
00353 
00374 LIBDSAPI_CDECL
00375 DS_Status DS_LDIF_Entry2LDIFString (
00376     const DS_Entry *entry,
00377     char **str_p
00378 );
00379 
00405 LIBDSAPI_CDECL
00406 DS_Status DS_LDIF_LDIFString2Entry (
00407     const char **str_p,
00408     DS_Entry **entry_p,
00409     int allow_unknown
00410 );
00411 
00429 LIBDSAPI_CDECL
00430 DS_Status DS_LDIF_AllowUnknownAttrs (
00431     DS_LDIF *ldif,
00432     int allow_unknown
00433 );
00434 
00448 LIBDSAPI_CDECL
00449 DS_Status DS_LDIF_GetAllowUnknownAttrs (
00450     DS_LDIF *ldif,
00451     int *allow_unknown_p
00452 );
00453 
00458 #endif /* ISODE_DSAPI_LDIF_H */
Copyright © 2008 Isode privacy   feedback Subscribe to our rss newsfeed