2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
10 #ifndef __CM_UTILS_H_ENV__
11 #define __CM_UTILS_H_ENV__ 1
13 #define CM_UTILS_SPACESIZE 8192 /* space to allocate */
14 typedef struct cm_space {
16 clientchar_t wdata[CM_UTILS_SPACESIZE];
17 char data[CM_UTILS_SPACESIZE];
19 struct cm_space *nextp;
23 #define ERROR_TABLE_BASE_VL (363520L)
24 #define VL_NOENT (363524L)
26 extern cm_space_t *cm_GetSpace(void);
28 extern void cm_FreeSpace(cm_space_t *);
30 extern long cm_MapRPCError(long error, cm_req_t *reqp);
32 extern long cm_MapRPCErrorRmdir(long error, cm_req_t *reqp);
34 extern long cm_MapVLRPCError(long error, cm_req_t *reqp);
36 extern void init_et_to_sys_error(void);
38 extern int cm_Is8Dot3(clientchar_t *namep);
40 extern void cm_Gen8Dot3Name(struct cm_dirEntry *dep, clientchar_t *shortName,
41 clientchar_t **shortNameEndp);
43 #define cm_Gen8Dot3Name(dep,shortName,shortNameEndp) \
44 cm_Gen8Dot3NameInt((dep)->name, &(dep)->fid, shortName, shortNameEndp)
46 extern void cm_Gen8Dot3NameInt(const fschar_t * longname, cm_dirFid_t * pfid,
47 clientchar_t *shortName, clientchar_t **shortNameEndp);
49 extern void cm_Gen8Dot3NameIntW(const clientchar_t* longname, cm_dirFid_t * pfid,
50 clientchar_t *shortName, clientchar_t **shortNameEndp);
52 extern int cm_MatchMask(clientchar_t *namep, clientchar_t *maskp, int flags);
54 #endif /* __CM_UTILS_H_ENV__ */