nfs-ganesha 1.4
Functions | Variables

nfs_export_list.c File Reference

routines for managing the export list. More...

#include <stdio.h>
#include <sys/types.h>
#include <ctype.h>
#include <stdlib.h>
#include <dirent.h>
#include <netdb.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <string.h>
#include <pthread.h>
#include <fcntl.h>
#include <sys/file.h>
#include <pwd.h>
#include <grp.h>
#include "log.h"
#include "ganesha_rpc.h"
#include "nfs_core.h"
#include "nfs23.h"
#include "nfs4.h"
#include "fsal.h"
#include "nfs_tools.h"
#include "nfs_exports.h"
#include "nfs_file_handle.h"

Go to the source code of this file.

Functions

exportlist_tnfs_Get_export_by_id (exportlist_t *exportroot, unsigned short exportid)
int get_req_uid_gid (struct svc_req *req, exportlist_t *pexport, struct user_cred *user_credentials)
int nfs_check_anon (exportlist_client_entry_t *pexport_client, exportlist_t *pexport, struct user_cred *user_credentials)
int nfs_build_fsal_context (struct svc_req *req, exportlist_t *pexport, fsal_op_context_t *pcontext, struct user_cred *user_credentials)
int nfs_compare_clientcred (nfs_client_cred_t *pcred1, nfs_client_cred_t *pcred2)
int nfs_rpc_req2client_cred (struct svc_req *reqp, nfs_client_cred_t *pcred)
int nfs_export_tag2path (exportlist_t *exportroot, char *tag, int taglen, char *path, int pathlen)

Variables

const char * Rpc_gss_svc_name []

Detailed Description

routines for managing the export list.

Author:
Author:
deniel
Date:
Date:
2006/01/20 13:44:57
Version:
Revision:
1.13

nfs_export_list.c : routines for managing the export list.

Header:
/cea/S/home/cvs/cvs/SHERPA/BaseCvs/GANESHA/src/support/nfs_export_list.c,v 1.13 2006/01/20 13:44:57 deniel Exp
Log:
nfs_export_list.c,v

Revision 1.13 2006/01/20 13:44:57 deniel alt_groups are now handled

Revision 1.12 2006/01/19 07:40:26 leibovic Better exportlist management (test whether iterator is null).

Revision 1.11 2005/12/20 10:52:18 deniel exportlist is no longer dynamic but static

Revision 1.9 2005/11/21 15:04:34 leibovic Displaying acquired Credential.

Revision 1.8 2005/11/21 11:32:07 deniel Got ride of nfs_SetPostOpFh3 because of memory leaks

Revision 1.7 2005/11/21 09:54:55 leibovic Once for all thread's credential initialization.

Revision 1.6 2005/11/07 09:03:39 deniel Implementing access security

Revision 1.5 2005/11/04 15:12:58 deniel Added basic authentication support

Revision 1.4 2005/10/12 08:28:00 deniel Format of the errror message.

Revision 1.3 2005/08/11 12:37:28 deniel Added statistics management

Revision 1.2 2005/08/03 13:13:59 deniel memset to zero before building the filehandles

Revision 1.1 2005/08/03 06:57:54 deniel Added a libsupport for miscellaneous service functions

Revision 1.2 2005/08/02 13:49:43 deniel Ok NFSv3

Definition in file nfs_export_list.c.


Function Documentation

int get_req_uid_gid ( struct svc_req *  req,
exportlist_t pexport,
struct user_cred user_credentials 
)

get_req_uid_gid:

Parameters:
req[IN] incoming request.
pexport_client[IN] related export client
pexport[IN] related export entry
user_credentials[OUT] Filled in structure with uid and gids
Returns:
TRUE if successful, FALSE otherwise

Definition at line 162 of file nfs_export_list.c.

int nfs_build_fsal_context ( struct svc_req *  req,
exportlist_t pexport,
fsal_op_context_t pcontext,
struct user_cred user_credentials 
)

nfs_build_fsal_context: Builds the FSAL context according to the request and the export entry.

Builds the FSAL credentials according to the request and the export entry.

Parameters:
req[IN] incoming request.
pexport_client[IN] related export client
pexport[IN] related export entry
pcred[IN/OUT] initialized credential of caller thread.
user_credentials[OUT] Filled in structure with uid and gids
Returns:
TRUE if successful, FALSE otherwise

Definition at line 348 of file nfs_export_list.c.

int nfs_check_anon ( exportlist_client_entry_t pexport_client,
exportlist_t pexport,
struct user_cred user_credentials 
)

Definition at line 308 of file nfs_export_list.c.

int nfs_compare_clientcred ( nfs_client_cred_t pcred1,
nfs_client_cred_t pcred2 
)

nfs_compare_rpc_cred: Compares two RPC creds

Parameters:
pcred1[IN] first RPC cred
pcred2[IN] second RPC cred
Returns:
TRUE if same, FALSE otherwise

Definition at line 409 of file nfs_export_list.c.

int nfs_export_tag2path ( exportlist_t exportroot,
char *  tag,
int  taglen,
char *  path,
int  pathlen 
)

Definition at line 523 of file nfs_export_list.c.

exportlist_t* nfs_Get_export_by_id ( exportlist_t exportroot,
unsigned short  exportid 
)

nfs_Get_export_by_id: Gets an export entry from its export id.

Gets an export entry from its export id.

exportroot [IN] the root for the export list

Parameters:
exportid[IN] the id for the entry to be found.
Returns:
the pointer to the pointer to the export list or NULL if failed.

Definition at line 128 of file nfs_export_list.c.

int nfs_rpc_req2client_cred ( struct svc_req *  reqp,
nfs_client_cred_t pcred 
)

Definition at line 447 of file nfs_export_list.c.


Variable Documentation

const char* Rpc_gss_svc_name[]
Initial value:
    { "no name", "RPCSEC_GSS_SVC_NONE", "RPCSEC_GSS_SVC_INTEGRITY",
  "RPCSEC_GSS_SVC_PRIVACY"
}

Definition at line 111 of file nfs_export_list.c.