]>
Commit | Line | Data |
---|---|---|
374ca955 A |
1 | /* |
2 | ******************************************************************************* | |
3 | * | |
4 | * Copyright (C) 2003, International Business Machines | |
5 | * Corporation and others. All Rights Reserved. | |
6 | * | |
7 | ******************************************************************************* | |
8 | * file name: nfsprep.h | |
9 | * encoding: US-ASCII | |
10 | * tab size: 8 (not used) | |
11 | * indentation:4 | |
12 | * | |
13 | * created on: 2003jul11 | |
14 | * created by: Ram Viswanadha | |
15 | */ | |
16 | #ifndef _NFSPREP_H | |
17 | #define _NFSPREP_H | |
18 | ||
19 | #include "unicode/utypes.h" | |
20 | ||
21 | #if !UCONFIG_NO_IDNA | |
22 | ||
23 | #include "unicode/ustring.h" | |
24 | #include "unicode/usprep.h" | |
25 | #include <stdlib.h> | |
26 | #include <string.h> | |
27 | ||
28 | ||
29 | /* this enum must be kept in syn with NFS4DataFileNames array in nfsprep.c */ | |
30 | enum NFS4ProfileState{ | |
31 | NFS4_CS_PREP_CS, | |
32 | NFS4_CS_PREP_CI, | |
33 | NFS4_CIS_PREP, | |
34 | NFS4_MIXED_PREP_PREFIX, | |
35 | NFS4_MIXED_PREP_SUFFIX | |
36 | }; | |
37 | ||
38 | typedef enum NFS4ProfileState NFS4ProfileState; | |
39 | ||
40 | /** | |
41 | * Prepares the source UTF-8 string for use in file names and | |
42 | * returns UTF-8 string on output. | |
43 | * @param src | |
44 | * @param srcLen | |
45 | * @param dest | |
46 | * @param destCapacity | |
47 | * @param state | |
48 | * @param parseError | |
49 | * @param status | |
50 | */ | |
51 | int32_t | |
52 | nfs4_prepare(const char* src, int32_t srcLength, | |
53 | char* dest, int32_t destCapacity, | |
54 | NFS4ProfileState state, | |
55 | UParseError* parseError, | |
56 | UErrorCode* status); | |
57 | ||
58 | /** | |
59 | * @param dest | |
60 | * @param destCapacity | |
61 | * @param src | |
62 | * @param srcLen | |
63 | * @param state | |
64 | * @param parseError | |
65 | * @param status | |
66 | */ | |
67 | int32_t | |
68 | nfs4_mixed_prepare( const char* src, int32_t srcLength, | |
69 | char* dest, int32_t destCapacity, | |
70 | UParseError* parseError, | |
71 | UErrorCode* status); | |
72 | ||
73 | /** | |
74 | * @param dest | |
75 | * @param destCapacity | |
76 | * @param src | |
77 | * @param srcLen | |
78 | * @param state | |
79 | * @param parseError | |
80 | * @param status | |
81 | */ | |
82 | int32_t | |
83 | nfs4_cis_prepare( const char* src, int32_t srcLength, | |
84 | char* dest, int32_t destCapacity, | |
85 | UParseError* parseError, | |
86 | UErrorCode* status); | |
87 | ||
88 | /** | |
89 | * @param dest | |
90 | * @param destCapacity | |
91 | * @param src | |
92 | * @param srcLen | |
93 | * @param state | |
94 | * @param parseError | |
95 | * @param status | |
96 | */ | |
97 | int32_t | |
98 | nfs4_cs_prepare( const char* src, int32_t srcLength, | |
99 | char* dest, int32_t destCapacity, | |
100 | UBool isCaseSensitive, | |
101 | UParseError* parseError, | |
102 | UErrorCode* status); | |
103 | #endif | |
104 | ||
105 | #endif | |
106 | /* | |
107 | * Hey, Emacs, please set the following: | |
108 | * | |
109 | * Local Variables: | |
110 | * indent-tabs-mode: nil | |
111 | * End: | |
112 | * | |
113 | */ |