Also re-add removed codepoint_t; I'm clearly not having my day today.
authorJelmer Vernooij <jelmer@samba.org>
Sun, 1 Mar 2009 17:05:22 +0000 (18:05 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Sun, 1 Mar 2009 17:05:22 +0000 (18:05 +0100)
source3/include/smb.h

index 189e370496d5bfc7ea6a3762f30979ebddab2bec..f02088731d75b08e7352bda9c9a21e87220f8ea8 100644 (file)
@@ -167,6 +167,10 @@ typedef uint16 smb_ucs2_t;
 #define COPY_UCS2_CHAR(dest,src) (((unsigned char *)(dest))[0] = ((unsigned char *)(src))[0],\
                                ((unsigned char *)(dest))[1] = ((unsigned char *)(src))[1], (dest))
 
+/* Large data type for manipulating uint32 unicode codepoints */
+typedef uint32 codepoint_t;
+#define INVALID_CODEPOINT ((codepoint_t)-1)
+
 /* pipe string names */
 #define PIPE_LANMAN   "\\PIPE\\LANMAN"
 
@@ -1827,6 +1831,18 @@ struct unix_error_map {
 
 #define SAFE_NETBIOS_CHARS ". -_"
 
+/* generic iconv conversion structure */
+typedef struct _smb_iconv_t {
+       size_t (*direct)(void *cd, const char **inbuf, size_t *inbytesleft,
+                        char **outbuf, size_t *outbytesleft);
+       size_t (*pull)(void *cd, const char **inbuf, size_t *inbytesleft,
+                      char **outbuf, size_t *outbytesleft);
+       size_t (*push)(void *cd, const char **inbuf, size_t *inbytesleft,
+                      char **outbuf, size_t *outbytesleft);
+       void *cd_direct, *cd_pull, *cd_push;
+       char *from_name, *to_name;
+} *smb_iconv_t;
+
 /* The maximum length of a trust account password.
    Used when we randomly create it, 15 char passwords
    exceed NT4's max password length */