X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=include%2Fnfsc%2Flibnfs-raw.h;h=3ba9de3b0aed865ff4c423bde673a52efd1bad7b;hb=0672f75b57b9e0fbf56079944fde5b2fc9de27be;hp=1fb619597c9e41d768ff581cc846241d30a65374;hpb=f38aacf8c9cf23e2f4e9cc76a8bc61e3f6e8f47f;p=deb_libnfs.git diff --git a/include/nfsc/libnfs-raw.h b/include/nfsc/libnfs-raw.h index 1fb6195..3ba9de3 100644 --- a/include/nfsc/libnfs-raw.h +++ b/include/nfsc/libnfs-raw.h @@ -25,6 +25,10 @@ #include #include +#ifdef __cplusplus +extern "C" { +#endif + struct rpc_data { int size; unsigned char *data; @@ -59,6 +63,20 @@ struct nfs_fh3 *nfs_get_fh(struct nfsfh *nfsfh); */ void rpc_set_next_xid(struct rpc_context *rpc, uint32_t xid); +/* This function can be used to set the file descriptor used for + * the RPC context. It is primarily useful when emulating dup2() + * and similar or where you want full control of the filedescriptor numbers + * used by the rpc socket. + * + * ... + * oldfd = rpc_get_fd(rpc); + * dup2(oldfd, newfd); + * rpc_set_fd(rpc, newfd); + * close(oldfd); + * ... + */ +void rpc_set_fd(struct rpc_context *rpc, int fd); + #define RPC_STATUS_SUCCESS 0 #define RPC_STATUS_ERROR 1 #define RPC_STATUS_CANCEL 2 @@ -92,7 +110,7 @@ int rpc_connect_async(struct rpc_context *rpc, const char *server, int port, rpc * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * : data is NULL. */ -int rpc_connect_program_async(struct rpc_context *rpc, char *server, int program, int version, rpc_cb cb, void *private_data); +int rpc_connect_program_async(struct rpc_context *rpc, const char *server, int program, int version, rpc_cb cb, void *private_data); /* * When disconnecting a connection in flight. All commands in flight will be called with the callback * and status RPC_STATUS_ERROR. Data will be the error string for the disconnection. @@ -100,12 +118,12 @@ int rpc_connect_program_async(struct rpc_context *rpc, char *server, int program int rpc_disconnect(struct rpc_context *rpc, char *error); -/* - * PORTMAP FUNCTIONS +/* + * PORTMAP v2 FUNCTIONS */ /* - * Call PORTMAPPER/NULL + * Call PORTMAPPER2/NULL * Function returns * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. * <0 : An error occured when trying to set up the connection. The callback will not be invoked. @@ -118,11 +136,11 @@ int rpc_disconnect(struct rpc_context *rpc, char *error); * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_pmap_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); +EXTERN int rpc_pmap2_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); /* - * Call PORTMAPPER/GETPORT. + * Call PORTMAPPER2/GETPORT. * Function returns * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. * <0 : An error occured when trying to set up the connection. The callback will not be invoked. @@ -135,10 +153,10 @@ EXTERN int rpc_pmap_null_async(struct rpc_context *rpc, rpc_cb cb, void *private * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_pmap_getport_async(struct rpc_context *rpc, int program, int version, int protocol, rpc_cb cb, void *private_data); +EXTERN int rpc_pmap2_getport_async(struct rpc_context *rpc, int program, int version, int protocol, rpc_cb cb, void *private_data); /* - * Call PORTMAPPER/SET + * Call PORTMAPPER2/SET * Function returns * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. * <0 : An error occured when trying to set up the connection. The callback will not be invoked. @@ -151,10 +169,10 @@ EXTERN int rpc_pmap_getport_async(struct rpc_context *rpc, int program, int vers * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_pmap_set_async(struct rpc_context *rpc, int program, int version, int protocol, int port, rpc_cb cb, void *private_data); +EXTERN int rpc_pmap2_set_async(struct rpc_context *rpc, int program, int version, int protocol, int port, rpc_cb cb, void *private_data); /* - * Call PORTMAPPER/UNSET + * Call PORTMAPPER2/UNSET * Function returns * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. * <0 : An error occured when trying to set up the connection. The callback will not be invoked. @@ -167,32 +185,198 @@ EXTERN int rpc_pmap_set_async(struct rpc_context *rpc, int program, int version, * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_pmap_unset_async(struct rpc_context *rpc, int program, int version, int protocol, int port, rpc_cb cb, void *private_data); +EXTERN int rpc_pmap2_unset_async(struct rpc_context *rpc, int program, int version, int protocol, int port, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER2/DUMP. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is struct pmap2_dump_result. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap2_dump_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER2/CALLIT. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon + * data is a 'pmap2_call_result' pointer. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap2_callit_async(struct rpc_context *rpc, int program, int version, int procedure, char *data, int datalen, rpc_cb cb, void *private_data); + +/* + * PORTMAP v3 FUNCTIONS + */ + +/* + * Call PORTMAPPER3/NULL + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is NULL. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap3_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER3/SET. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is uint32_t * + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +struct pmap3_mapping; +EXTERN int rpc_pmap3_set_async(struct rpc_context *rpc, struct pmap3_mapping *map, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER3/UNSET. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is uint32_t * + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap3_unset_async(struct rpc_context *rpc, struct pmap3_mapping *map, rpc_cb cb, void *private_data); /* - * Call PORTMAPPER/CALLIT. + * Call PORTMAPPER3/GETADDR. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is struct pmap3_string_result. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap3_getaddr_async(struct rpc_context *rpc, struct pmap3_mapping *map, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER3/DUMP. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is struct pmap3_dump_result. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap3_dump_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER3/CALLIT. * Function returns * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. * <0 : An error occured when trying to set up the connection. The callback will not be invoked. * * When the callback is invoked, status indicates the result: * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon - * data is a 'pmap_call_result' pointer. + * data is a 'pmap3_call_result' pointer. * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. * data is the error string. * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_pmap_callit_async(struct rpc_context *rpc, int program, int version, int procedure, char *data, int datalen, rpc_cb cb, void *private_data); +EXTERN int rpc_pmap3_callit_async(struct rpc_context *rpc, int program, int version, int procedure, char *data, int datalen, rpc_cb cb, void *private_data); -/* - * MOUNT FUNCTIONS +/* + * Call PORTMAPPER3/GETTIME. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is a uint32_t *. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap3_gettime_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER3/UADDR2TADDR. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is a struct pmap3_netbuf *. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_pmap3_uaddr2taddr_async(struct rpc_context *rpc, char *uaddr, rpc_cb cb, void *private_data); + +/* + * Call PORTMAPPER3/TADDR2UADDR. + * Function returns + * 0 : The connection was initiated. Once the connection establish finishes, the callback will be invoked. + * <0 : An error occured when trying to set up the connection. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the portmapper daemon. + * data is a struct pmap3_string_result *. + * RPC_STATUS_ERROR : An error occured when trying to contact the portmapper. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +struct pmap3_netbuf; +EXTERN int rpc_pmap3_taddr2uaddr_async(struct rpc_context *rpc, struct pmap3_netbuf *netbuf, rpc_cb cb, void *private_data); + +/* + * MOUNT v3 FUNCTIONS */ char *mountstat3_to_str(int stat); int mountstat3_to_errno(int error); /* - * Call MOUNT/NULL + * Call MOUNT3/NULL * Function returns * 0 : The call was initiated. The callback will be invoked when the call completes. * <0 : An error occured when trying to set up the call. The callback will not be invoked. @@ -205,10 +389,11 @@ int mountstat3_to_errno(int error); * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ +EXTERN int rpc_mount3_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); EXTERN int rpc_mount_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); /* - * Call MOUNT/MNT + * Call MOUNT3/MNT * Function returns * 0 : The call was initiated. The callback will be invoked when the call completes. * <0 : An error occured when trying to set up the call. The callback will not be invoked. @@ -221,10 +406,11 @@ EXTERN int rpc_mount_null_async(struct rpc_context *rpc, rpc_cb cb, void *privat * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_mount_mnt_async(struct rpc_context *rpc, rpc_cb cb, char *export, void *private_data); +EXTERN int rpc_mount3_mnt_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, void *private_data); +EXTERN int rpc_mount_mnt_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, void *private_data); /* - * Call MOUNT/DUMP + * Call MOUNT3/DUMP * Function returns * 0 : The call was initiated. The callback will be invoked when the call completes. * <0 : An error occured when trying to set up the call. The callback will not be invoked. @@ -237,10 +423,11 @@ EXTERN int rpc_mount_mnt_async(struct rpc_context *rpc, rpc_cb cb, char *export, * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ +EXTERN int rpc_mount3_dump_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); EXTERN int rpc_mount_dump_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); /* - * Call MOUNT/UMNT + * Call MOUNT3/UMNT * Function returns * 0 : The call was initiated. The callback will be invoked when the call completes. * <0 : An error occured when trying to set up the call. The callback will not be invoked. @@ -253,10 +440,11 @@ EXTERN int rpc_mount_dump_async(struct rpc_context *rpc, rpc_cb cb, void *privat * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_mount_umnt_async(struct rpc_context *rpc, rpc_cb cb, char *export, void *private_data); +EXTERN int rpc_mount3_umnt_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, void *private_data); +EXTERN int rpc_mount_umnt_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, void *private_data); /* - * Call MOUNT/UMNTALL + * Call MOUNT3/UMNTALL * Function returns * 0 : The call was initiated. The callback will be invoked when the call completes. * <0 : An error occured when trying to set up the call. The callback will not be invoked. @@ -269,10 +457,11 @@ EXTERN int rpc_mount_umnt_async(struct rpc_context *rpc, rpc_cb cb, char *export * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ +EXTERN int rpc_mount3_umntall_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); EXTERN int rpc_mount_umntall_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); /* - * Call MOUNT/EXPORT + * Call MOUNT3/EXPORT * NOTE: You must include 'libnfs-raw-mount.h' to get the definitions of the * returned structures. * @@ -289,12 +478,114 @@ EXTERN int rpc_mount_umntall_async(struct rpc_context *rpc, rpc_cb cb, void *pri * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ +EXTERN int rpc_mount3_export_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); EXTERN int rpc_mount_export_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); +/* + * MOUNT v1 FUNCTIONS (Used with NFSv2) + */ +/* + * Call MOUNT1/NULL + * Function returns + * 0 : The call was initiated. The callback will be invoked when the call completes. + * <0 : An error occured when trying to set up the call. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the mount daemon. + * data is NULL. + * RPC_STATUS_ERROR : An error occured when trying to contact the mount daemon. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_mount1_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); +/* + * Call MOUNT1/MNT + * Function returns + * 0 : The call was initiated. The callback will be invoked when the call completes. + * <0 : An error occured when trying to set up the call. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the mount daemon. + * data is union mountres1. + * RPC_STATUS_ERROR : An error occured when trying to contact the mount daemon. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_mount1_mnt_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, void *private_data); +/* + * Call MOUNT1/DUMP + * Function returns + * 0 : The call was initiated. The callback will be invoked when the call completes. + * <0 : An error occured when trying to set up the call. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the mount daemon. + * data is a mountlist. + * RPC_STATUS_ERROR : An error occured when trying to contact the mount daemon. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_mount1_dump_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); + +/* + * Call MOUNT1/UMNT + * Function returns + * 0 : The call was initiated. The callback will be invoked when the call completes. + * <0 : An error occured when trying to set up the call. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the mount daemon. + * data NULL. + * RPC_STATUS_ERROR : An error occured when trying to contact the mount daemon. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_mount1_umnt_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, void *private_data); + +/* + * Call MOUNT1/UMNTALL + * Function returns + * 0 : The call was initiated. The callback will be invoked when the call completes. + * <0 : An error occured when trying to set up the call. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the mount daemon. + * data NULL. + * RPC_STATUS_ERROR : An error occured when trying to contact the mount daemon. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_mount1_umntall_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); -/* +/* + * Call MOUNT1/EXPORT + * NOTE: You must include 'libnfs-raw-mount.h' to get the definitions of the + * returned structures. + * + * Function returns + * 0 : The call was initiated. The callback will be invoked when the call completes. + * <0 : An error occured when trying to set up the call. The callback will not be invoked. + * + * When the callback is invoked, status indicates the result: + * RPC_STATUS_SUCCESS : We got a successful response from the mount daemon. + * data is a pointer to an exports pointer: + * exports export = *(exports *)data; + * RPC_STATUS_ERROR : An error occured when trying to contact the mount daemon. + * data is the error string. + * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. + * data is NULL. + */ +EXTERN int rpc_mount1_export_async(struct rpc_context *rpc, rpc_cb cb, void *private_data); + + +/* * NFS v3 FUNCTIONS */ struct nfs_fh3; @@ -696,7 +987,7 @@ struct LINK3args; EXTERN int rpc_nfs3_link_async(struct rpc_context *rpc, rpc_cb cb, struct LINK3args *args, void *private_data); EXTERN int rpc_nfs_link_async(struct rpc_context *rpc, rpc_cb cb, struct nfs_fh3 *file, struct nfs_fh3 *newdir, char *newname, void *private_data); -/* +/* * NFS v2 FUNCTIONS */ @@ -971,7 +1262,7 @@ EXTERN int rpc_nfs2_readdir_async(struct rpc_context *rpc, rpc_cb cb, struct REA struct STATFS2args; EXTERN int rpc_nfs2_statfs_async(struct rpc_context *rpc, rpc_cb cb, struct STATFS2args *args, void *private_data); -/* +/* * RQUOTA FUNCTIONS */ char *rquotastat_to_str(int error); @@ -1007,7 +1298,7 @@ EXTERN int rpc_rquota1_null_async(struct rpc_context *rpc, rpc_cb cb, void *priv * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_rquota1_getquota_async(struct rpc_context *rpc, rpc_cb cb, char *export, int uid, void *private_data); +EXTERN int rpc_rquota1_getquota_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, int uid, void *private_data); /* * Call RQUOTA1/GETACTIVEQUOTA @@ -1023,7 +1314,7 @@ EXTERN int rpc_rquota1_getquota_async(struct rpc_context *rpc, rpc_cb cb, char * * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -EXTERN int rpc_rquota1_getactivequota_async(struct rpc_context *rpc, rpc_cb cb, char *export, int uid, void *private_data); +EXTERN int rpc_rquota1_getactivequota_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, int uid, void *private_data); @@ -1058,7 +1349,7 @@ int rpc_rquota2_null_async(struct rpc_context *rpc, rpc_cb cb, void *private_dat * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -int rpc_rquota2_getquota_async(struct rpc_context *rpc, rpc_cb cb, char *export, int type, int uid, void *private_data); +int rpc_rquota2_getquota_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, int type, int uid, void *private_data); /* * Call RQUOTA2/GETACTIVEQUOTA @@ -1074,7 +1365,7 @@ int rpc_rquota2_getquota_async(struct rpc_context *rpc, rpc_cb cb, char *export, * RPC_STATUS_CANCEL : The connection attempt was aborted before it could complete. * data is NULL. */ -int rpc_rquota2_getactivequota_async(struct rpc_context *rpc, rpc_cb cb, char *export, int type, int uid, void *private_data); +int rpc_rquota2_getactivequota_async(struct rpc_context *rpc, rpc_cb cb, char *exportname, int type, int uid, void *private_data); @@ -1082,7 +1373,7 @@ int rpc_rquota2_getactivequota_async(struct rpc_context *rpc, rpc_cb cb, char *e /* - * NFSACL functions + * NFSACL functions */ /* @@ -1148,7 +1439,7 @@ EXTERN int rpc_nfsacl_setacl_async(struct rpc_context *rpc, rpc_cb cb, struct SE * NLM functions */ char *nlmstat4_to_str(int stat); - + /* * Call NLM/NULL * Call the NULL procedure for the NLM protocol @@ -1247,7 +1538,7 @@ EXTERN int rpc_nlm4_unlock_async(struct rpc_context *rpc, rpc_cb cb, struct NLM4 * NSM functions */ char *nsmstat1_to_str(int stat); - + /* * Call NSM/NULL * Call the NULL procedure for the NSM protocol @@ -1379,4 +1670,8 @@ EXTERN int rpc_nsm1_simucrash_async(struct rpc_context *rpc, rpc_cb cb, void *pr struct NSM1_NOTIFYargs; EXTERN int rpc_nsm1_notify_async(struct rpc_context *rpc, rpc_cb cb, struct NSM1_NOTIFYargs *args, void *private_data); +#ifdef __cplusplus +} +#endif + #endif