Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 /*
  2  * include/linux/nfs_idmap.h
  3  *
  4  *  UID and GID to name mapping for clients.
  5  *
  6  *  Copyright (c) 2002 The Regents of the University of Michigan.
  7  *  All rights reserved.
  8  *
  9  *  Marius Aamodt Eriksen <marius@umich.edu>
 10  *
 11  *  Redistribution and use in source and binary forms, with or without
 12  *  modification, are permitted provided that the following conditions
 13  *  are met:
 14  *
 15  *  1. Redistributions of source code must retain the above copyright
 16  *     notice, this list of conditions and the following disclaimer.
 17  *  2. Redistributions in binary form must reproduce the above copyright
 18  *     notice, this list of conditions and the following disclaimer in the
 19  *     documentation and/or other materials provided with the distribution.
 20  *  3. Neither the name of the University nor the names of its
 21  *     contributors may be used to endorse or promote products derived
 22  *     from this software without specific prior written permission.
 23  *
 24  *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
 25  *  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 26  *  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 27  *  DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 28  *  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 29  *  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 30  *  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 31  *  BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 32  *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 33  *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 34  *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 35  */
 36 
 37 #ifndef NFS_IDMAP_H
 38 #define NFS_IDMAP_H
 39 
 40 /* XXX from bits/utmp.h  */
 41 #define IDMAP_NAMESZ  128
 42 
 43 #define IDMAP_TYPE_USER  0
 44 #define IDMAP_TYPE_GROUP 1
 45 
 46 #define IDMAP_CONV_IDTONAME 0
 47 #define IDMAP_CONV_NAMETOID 1
 48 
 49 #define IDMAP_STATUS_INVALIDMSG 0x01
 50 #define IDMAP_STATUS_AGAIN      0x02
 51 #define IDMAP_STATUS_LOOKUPFAIL 0x04
 52 #define IDMAP_STATUS_SUCCESS    0x08
 53 
 54 struct idmap_msg {
 55         __u8  im_type;
 56         __u8  im_conv;
 57         char  im_name[IDMAP_NAMESZ];
 58         __u32 im_id;
 59         __u8  im_status;
 60 };
 61 
 62 #ifdef __KERNEL__
 63 
 64 /* Forward declaration to make this header independent of others */
 65 struct nfs_client;
 66 
 67 int nfs_idmap_new(struct nfs_client *);
 68 void nfs_idmap_delete(struct nfs_client *);
 69 
 70 int nfs_map_name_to_uid(struct nfs_client *, const char *, size_t, __u32 *);
 71 int nfs_map_group_to_gid(struct nfs_client *, const char *, size_t, __u32 *);
 72 int nfs_map_uid_to_name(struct nfs_client *, __u32, char *);
 73 int nfs_map_gid_to_group(struct nfs_client *, __u32, char *);
 74 
 75 extern unsigned int nfs_idmap_cache_timeout;
 76 #endif /* __KERNEL__ */
 77 
 78 #endif /* NFS_IDMAP_H */
 79 
  This page was automatically generated by the LXR engine.