nfs-ganesha 1.4

commands.h

Go to the documentation of this file.
00001 
00011 #ifndef _COMMANDS_H
00012 #define _COMMANDS_H
00013 
00014 #include "shell_types.h"
00015 #include <stdio.h>
00016 
00017 /*----------------------------------*
00018  *    FSAL commands prototypes.
00019  *----------------------------------*/
00020 
00021 /* a setloglevel command is needed for each layer */
00022 void fsal_layer_SetLogLevel(int log_lvl);
00023 
00025 int fn_fsal_init_fs(int argc,   /* IN : number of args in argv */
00026                     char **argv,        /* IN : arg list               */
00027                     FILE * output       /* IN : output stream          */
00028     );
00029 
00031 int fn_fsal_pwd(int argc,       /* IN : number of args in argv */
00032                 char **argv,    /* IN : arg list               */
00033                 FILE * output   /* IN : output stream          */
00034     );
00035 
00037 int fn_fsal_cd(int argc,        /* IN : number of args in argv */
00038                char **argv,     /* IN : arg list               */
00039                FILE * output    /* IN : output stream          */
00040     );
00041 
00043 int fn_fsal_stat(int argc,      /* IN : number of args in argv */
00044                  char **argv,   /* IN : arg list               */
00045                  FILE * output  /* IN : output stream          */
00046     );
00047 
00049 int fn_fsal_ls(int argc,        /* IN : number of args in argv */
00050                char **argv,     /* IN : arg list               */
00051                FILE * output    /* IN : output stream          */
00052     );
00053 
00055 int fn_fsal_callstat(int argc,  /* IN : number of args in argv */
00056                      char **argv,       /* IN : arg list               */
00057                      FILE * output      /* IN : output stream          */
00058     );
00059 
00061 int fn_fsal_su(int argc,        /* IN : number of args in argv */
00062                char **argv,     /* IN : arg list               */
00063                FILE * output    /* IN : output stream          */
00064     );
00065 
00067 int fn_fsal_unlink(int argc,    /* IN : number of args in argv */
00068                    char **argv, /* IN : arg list               */
00069                    FILE * output        /* IN : output stream          */
00070     );
00071 
00073 int fn_fsal_mkdir(int argc,     /* IN : number of args in argv */
00074                   char **argv,  /* IN : arg list               */
00075                   FILE * output /* IN : output stream          */
00076     );
00077 
00079 int fn_fsal_rename(int argc,    /* IN : number of args in argv */
00080                    char **argv, /* IN : arg list               */
00081                    FILE * output        /* IN : output stream          */
00082     );
00083 
00085 int fn_fsal_ln(int argc,        /* IN : number of args in argv */
00086                char **argv,     /* IN : arg list               */
00087                FILE * output    /* IN : output stream          */
00088     );
00089 
00091 int fn_fsal_hardlink(int argc,  /* IN : number of args in argv */
00092                      char **argv,       /* IN : arg list               */
00093                      FILE * output      /* IN : output stream          */
00094     );
00095 
00097 int fn_fsal_create(int argc,    /* IN : number of args in argv */
00098                    char **argv, /* IN : arg list               */
00099                    FILE * output        /* IN : output stream          */
00100     );
00101 
00103 int fn_fsal_setattr(int argc,   /* IN : number of args in argv */
00104                     char **argv,        /* IN : arg list               */
00105                     FILE * output       /* IN : output stream          */
00106     );
00107 
00109 int fn_fsal_access(int argc,    /* IN : number of args in argv */
00110                    char **argv, /* IN : arg list               */
00111                    FILE * output        /* IN : output stream          */
00112     );
00113 
00115 int fn_fsal_truncate(int argc,  /* IN : number of args in argv */
00116                      char **argv,       /* IN : arg list               */
00117                      FILE * output      /* IN : output stream          */
00118     );
00119 
00121 int fn_fsal_open(int argc,      /* IN : number of args in argv */
00122                  char **argv,   /* IN : arg list               */
00123                  FILE * output  /* IN : output stream          */
00124     );
00125 
00127 int fn_fsal_open_byname(int argc,       /* IN : number of args in argv */
00128                         char **argv,    /* IN : arg list               */
00129                         FILE * output   /* IN : output stream          */
00130     );
00131 
00133 int fn_fsal_open_byfileid(int argc,     /* IN : number of args in argv */
00134                           char **argv,  /* IN : arg list               */
00135                           FILE * output /* IN : output stream          */
00136     );
00137 
00139 int fn_fsal_read(int argc,      /* IN : number of args in argv */
00140                  char **argv,   /* IN : arg list               */
00141                  FILE * output  /* IN : output stream          */
00142     );
00143 
00145 int fn_fsal_write(int argc,     /* IN : number of args in argv */
00146                   char **argv,  /* IN : arg list               */
00147                   FILE * output /* IN : output stream          */
00148     );
00149 
00151 int fn_fsal_close(int argc,     /* IN : number of args in argv */
00152                   char **argv,  /* IN : arg list               */
00153                   FILE * output /* IN : output stream          */
00154     );
00155 
00157 int fn_fsal_close_byfileid(int argc,    /* IN : number of args in argv */
00158                            char **argv, /* IN : arg list               */
00159                            FILE * output        /* IN : output stream          */
00160     );
00161 
00163 int fn_fsal_cat(int argc,       /* IN : number of args in argv */
00164                 char **argv,    /* IN : arg list               */
00165                 FILE * output   /* IN : output stream          */
00166     );
00167 
00169 int fn_fsal_rcp(int argc,       /* IN : number of args in argv */
00170                 char **argv,    /* IN : arg list               */
00171                 FILE * output   /* IN : output stream          */
00172     );
00173 
00175 int fn_fsal_cross(int argc,     /* IN : number of args in argv */
00176                   char **argv,  /* IN : arg list               */
00177                   FILE * output /* IN : output stream          */
00178     );
00179 
00181 int fn_fsal_handle(int argc,     /* IN : number of args in argv */
00182                    char **argv,  /* IN : arg list               */
00183                    FILE * output /* IN : output stream          */
00184     );
00185 
00186 
00188 int fn_fsal_handlecmp(int argc, /* IN : number of args in argv */
00189                       char **argv,      /* IN : arg list   */
00190                       FILE * output     /* IN : output stream */
00191     );
00192 
00194 int fn_fsal_lsxattrs(int argc,  /* IN : number of args in argv */
00195                      char **argv,       /* IN : arg list               */
00196                      FILE * output      /* IN : output stream          */
00197     );
00198 
00200 int fn_fsal_getxattr(int argc,  /* IN : number of args in argv */
00201                      char **argv,       /* IN : arg list               */
00202                      FILE * output      /* IN : output stream          */
00203     );
00204 
00205 
00206 /*----------------------------------*
00207  * Cache_inode commands prototypes.
00208  *----------------------------------*/
00209 
00210 /* a setloglevel command is needed for each layer */
00211 void Cache_inode_layer_SetLogLevel(int log_lvl);
00212 
00214 int fn_Cache_inode_cache_init(int argc, /* IN : number of args in argv */
00215                               char **argv,      /* IN : arg list               */
00216                               FILE * output     /* IN : output stream          */
00217     );
00218 
00220 int fn_Cache_inode_pwd(int argc,        /* IN : number of args in argv */
00221                        char **argv,     /* IN : arg list               */
00222                        FILE * output    /* IN : output stream          */
00223     );
00224 
00226 int fn_Cache_inode_cd(int argc, /* IN : number of args in argv */
00227                       char **argv,      /* IN : arg list               */
00228                       FILE * output     /* IN : output stream          */
00229     );
00230 
00232 int fn_Cache_inode_stat(int argc,       /* IN : number of args in argv */
00233                         char **argv,    /* IN : arg list               */
00234                         FILE * output   /* IN : output stream          */
00235     );
00236 
00238 int fn_Cache_inode_gc(int argc, /* IN : number of args in argv */
00239                       char **argv,      /* IN : arg list               */
00240                       FILE * output);   /* IN : output stream          */
00241 
00243 int fn_Cache_inode_ls(int argc, /* IN : number of args in argv */
00244                       char **argv,      /* IN : arg list               */
00245                       FILE * output     /* IN : output stream          */
00246     );
00247 
00249 int fn_Cache_inode_link(int argc,       /* IN : number of args in argv */
00250                         char **argv,    /* IN : arg list               */
00251                         FILE * output /* IN : output stream          */ );
00252 
00254 int fn_Cache_inode_mkdir(int argc,      /* IN : number of args in argv */
00255                          char **argv,   /* IN : arg list               */
00256                          FILE * output /* IN : output stream          */ );
00257 
00259 int fn_Cache_inode_rename(int argc,     /* IN : number of args in argv */
00260                           char **argv,  /* IN : arg list               */
00261                           FILE * output /* IN : output stream          */ );
00262 
00264 int fn_Cache_inode_create(int argc,     /* IN : number of args in argv */
00265                           char **argv,  /* IN : arg list               */
00266                           FILE * output /* IN : output stream          */ );
00267 
00269 int fn_Cache_inode_ln(int argc, /* IN : number of args in argv */
00270                       char **argv,      /* IN : arg list               */
00271                       FILE * output /* IN : output stream          */ );
00272 
00274 int fn_Cache_inode_open_by_name(int argc,       /* IN : number of args in argv */
00275                                 char **argv,    /* IN : arg list               */
00276                                 FILE * output /* IN : output stream          */ );
00277 
00279 int fn_Cache_inode_close(int argc,      /* IN : number of args in argv */
00280                          char **argv,   /* IN : arg list               */
00281                          FILE * output /* IN : output stream          */ );
00282 
00289 int fn_Cache_inode_setattr(int argc,    /* IN : number of args in argv */
00290                            char **argv, /* IN : arg list               */
00291                            FILE * output /* IN : output stream          */ );
00292 
00294 int fn_Cache_inode_unlink(int argc,     /* IN : number of args in argv */
00295                           char **argv,  /* IN : arg list               */
00296                           FILE * output /* IN : output stream          */ );
00297 
00299 int fn_Cache_inode_callstat(int argc,   /* IN : number of args in argv */
00300                             char **argv,        /* IN : arg list               */
00301                             FILE * output /* IN : output stream          */ );
00302 
00304 int fn_Cache_inode_data_cache(int argc, /* IN : number of args in argv */
00305                               char **argv,      /* IN : arg list               */
00306                               FILE * output /* IN : output stream          */ );
00307 
00309 int fn_Cache_inode_recover_cache(int argc,      /* IN : number of args in argv */
00310                                  char **argv,   /* IN : arg list               */
00311                                  FILE * output /* IN : output stream          */ );
00312 
00314 int fn_Cache_inode_refresh_cache(int argc,      /* IN : number of args in argv */
00315                                  char **argv,   /* IN : arg list               */
00316                                  FILE * output /* IN : output stream          */ );
00317 
00319 int fn_Cache_inode_flush_cache(int argc,        /* IN : number of args in argv */
00320                                char **argv,     /* IN : arg list               */
00321                                FILE * output /* IN : output stream          */ );
00322 
00324 int fn_Cache_inode_release_cache(int argc,      /* IN : number of args in argv */
00325                                  char **argv,   /* IN : arg list               */
00326                                  FILE * output /* IN : output stream          */ );
00327 
00329 int fn_Cache_inode_read(int argc,       /* IN : number of args in argv */
00330                         char **argv,    /* IN : arg list               */
00331                         FILE * output /* IN : output stream          */ );
00332 
00334 int fn_Cache_inode_write(int argc,      /* IN : number of args in argv */
00335                          char **argv,   /* IN : arg list               */
00336                          FILE * output /* IN : output stream          */ );
00337 
00339 int fn_Cache_inode_su(int argc, /* IN : number of args in argv */
00340                       char **argv,      /* IN : arg list               */
00341                       FILE * output /* IN : output stream          */ );
00342 
00349 int fn_Cache_inode_access(int argc,     /* IN : number of args in argv */
00350                           char **argv,  /* IN : arg list               */
00351                           FILE * output /* IN : output stream          */ );
00352 
00358 int fn_Cache_inode_invalidate(int argc,      /* IN : number of args in argv */
00359                               char **argv,   /* IN : arg list               */
00360                               FILE * output  /* IN : output stream          */ ) ;
00361 
00362 /*----------------------------------*
00363  *      NFS commands prototypes.
00364  *----------------------------------*/
00365 
00366 /* a setloglevel command is needed for each layer */
00367 void nfs_layer_SetLogLevel(int log_lvl);
00368 
00370 int fn_nfs_init(int argc,       /* IN : number of args in argv */
00371                 char **argv,    /* IN : arg list               */
00372                 FILE * output   /* IN : output stream          */
00373     );
00374 
00376 int fn_MNT1_command(int argc,   /* IN : number of args in argv */
00377                     char **argv,        /* IN : arg list               */
00378                     FILE * output       /* IN : output stream          */
00379     );
00380 
00382 int fn_MNT3_command(int argc,   /* IN : number of args in argv */
00383                     char **argv,        /* IN : arg list               */
00384                     FILE * output       /* IN : output stream          */
00385     );
00386 
00388 int fn_NFS2_command(int argc,   /* IN : number of args in argv */
00389                     char **argv,        /* IN : arg list               */
00390                     FILE * output       /* IN : output stream          */
00391     );
00392 
00394 int fn_NFS3_command(int argc,   /* IN : number of args in argv */
00395                     char **argv,        /* IN : arg list               */
00396                     FILE * output       /* IN : output stream          */
00397     );
00398 
00400 int fn_nfs_cd(int argc,         /* IN : number of args in argv */
00401               char **argv,      /* IN : arg list               */
00402               FILE * output     /* IN : output stream          */
00403     );
00404 
00406 int fn_nfs_ls(int argc,         /* IN : number of args in argv */
00407               char **argv,      /* IN : arg list               */
00408               FILE * output     /* IN : output stream          */
00409     );
00410 
00412 int fn_nfs_mount(int argc,      /* IN : number of args in argv */
00413                  char **argv,   /* IN : arg list               */
00414                  FILE * output  /* IN : output stream          */
00415     );
00416 
00418 int fn_nfs_umount(int argc,     /* IN : number of args in argv */
00419                   char **argv,  /* IN : arg list               */
00420                   FILE * output /* IN : output stream          */
00421     );
00422 
00424 int fn_nfs_pwd(int argc,        /* IN : number of args in argv */
00425                char **argv,     /* IN : arg list               */
00426                FILE * output    /* IN : output stream          */
00427     );
00428 
00430 int fn_nfs_create(int argc,     /* IN : number of args in argv */
00431                   char **argv,  /* IN : arg list               */
00432                   FILE * output /* IN : output stream          */
00433     );
00434 
00436 int fn_nfs_mkdir(int argc,      /* IN : number of args in argv */
00437                  char **argv,   /* IN : arg list               */
00438                  FILE * output  /* IN : output stream          */
00439     );
00440 
00442 int fn_nfs_unlink(int argc,     /* IN : number of args in argv */
00443                   char **argv,  /* IN : arg list               */
00444                   FILE * output /* IN : output stream          */
00445     );
00446 
00448 int fn_nfs_setattr(int argc,    /* IN : number of args in argv */
00449                    char **argv, /* IN : arg list               */
00450                    FILE * output        /* IN : output stream          */
00451     );
00452 
00454 int fn_nfs_rename(int argc,     /* IN : number of args in argv */
00455                   char **argv,  /* IN : arg list               */
00456                   FILE * output /* IN : output stream          */
00457     );
00458 
00460 int fn_nfs_hardlink(int argc,   /* IN : number of args in argv */
00461                     char **argv,        /* IN : arg list               */
00462                     FILE * output       /* IN : output stream          */
00463     );
00464 
00466 int fn_nfs_ln(int argc,         /* IN : number of args in argv */
00467               char **argv,      /* IN : arg list               */
00468               FILE * output     /* IN : output stream          */
00469     );
00470 
00472 int fn_nfs_stat(int argc,       /* IN : number of args in argv */
00473                 char **argv,    /* IN : arg list               */
00474                 FILE * output   /* IN : output stream          */
00475     );
00476 
00477 int fn_nfs_su(int argc,         /* IN : number of args in argv */
00478               char **argv,      /* IN : arg list               */
00479               FILE * output);   /* IN : output stream          */
00480 
00481 int fn_nfs_id(int argc,         /* IN : number of args in argv */
00482               char **argv,      /* IN : arg list               */
00483               FILE * output);   /* IN : output stream          */
00484 
00485 /*----------------------------------*
00486  *      NFS_remote commands prototypes.
00487  *----------------------------------*/
00488 
00489 /* a setloglevel command is needed for each layer */
00490 void nfs_remote_layer_SetLogLevel(int log_lvl);
00491 
00493 int fn_rpc_init(int argc,       /* IN : number of args in argv */
00494                 char **argv,    /* IN : arg list               */
00495                 FILE * output   /* IN : output stream          */
00496     );
00497 
00499 int fn_MNT1_remote_command(int argc,    /* IN : number of args in argv */
00500                            char **argv, /* IN : arg list               */
00501                            FILE * output        /* IN : output stream          */
00502     );
00503 
00505 int fn_MNT3_remote_command(int argc,    /* IN : number of args in argv */
00506                            char **argv, /* IN : arg list               */
00507                            FILE * output        /* IN : output stream          */
00508     );
00509 
00511 int fn_NFS2_remote_command(int argc,    /* IN : number of args in argv */
00512                            char **argv, /* IN : arg list               */
00513                            FILE * output        /* IN : output stream          */
00514     );
00515 
00517 int fn_NFS3_remote_command(int argc,    /* IN : number of args in argv */
00518                            char **argv, /* IN : arg list               */
00519                            FILE * output        /* IN : output stream          */
00520     );
00521 
00523 int fn_nfs_remote_cd(int argc,  /* IN : number of args in argv */
00524                      char **argv,       /* IN : arg list               */
00525                      FILE * output      /* IN : output stream          */
00526     );
00527 
00529 int fn_nfs_remote_ls(int argc,  /* IN : number of args in argv */
00530                      char **argv,       /* IN : arg list               */
00531                      FILE * output      /* IN : output stream          */
00532     );
00533 
00535 int fn_nfs_remote_mount(int argc,       /* IN : number of args in argv */
00536                         char **argv,    /* IN : arg list               */
00537                         FILE * output   /* IN : output stream          */
00538     );
00539 
00541 int fn_nfs_remote_umount(int argc,      /* IN : number of args in argv */
00542                          char **argv,   /* IN : arg list               */
00543                          FILE * output  /* IN : output stream          */
00544     );
00545 
00547 int fn_nfs_remote_pwd(int argc, /* IN : number of args in argv */
00548                       char **argv,      /* IN : arg list               */
00549                       FILE * output     /* IN : output stream          */
00550     );
00551 
00553 int fn_nfs_remote_create(int argc,      /* IN : number of args in argv */
00554                          char **argv,   /* IN : arg list               */
00555                          FILE * output  /* IN : output stream          */
00556     );
00557 
00559 int fn_nfs_remote_mkdir(int argc,       /* IN : number of args in argv */
00560                         char **argv,    /* IN : arg list               */
00561                         FILE * output   /* IN : output stream          */
00562     );
00563 
00565 int fn_nfs_remote_unlink(int argc,      /* IN : number of args in argv */
00566                          char **argv,   /* IN : arg list               */
00567                          FILE * output  /* IN : output stream          */
00568     );
00569 
00571 int fn_nfs_remote_setattr(int argc,     /* IN : number of args in argv */
00572                           char **argv,  /* IN : arg list               */
00573                           FILE * output /* IN : output stream          */
00574     );
00575 
00577 int fn_nfs_remote_rename(int argc,      /* IN : number of args in argv */
00578                          char **argv,   /* IN : arg list               */
00579                          FILE * output  /* IN : output stream          */
00580     );
00581 
00583 int fn_nfs_remote_hardlink(int argc,    /* IN : number of args in argv */
00584                            char **argv, /* IN : arg list               */
00585                            FILE * output        /* IN : output stream          */
00586     );
00587 
00589 int fn_nfs_remote_ln(int argc,  /* IN : number of args in argv */
00590                      char **argv,       /* IN : arg list               */
00591                      FILE * output      /* IN : output stream          */
00592     );
00593 
00595 int fn_nfs_remote_stat(int argc,        /* IN : number of args in argv */
00596                        char **argv,     /* IN : arg list               */
00597                        FILE * output    /* IN : output stream          */
00598     );
00599 
00600 int fn_nfs_remote_su(int argc,  /* IN : number of args in argv */
00601                      char **argv,       /* IN : arg list               */
00602                      FILE * output);    /* IN : output stream          */
00603 
00604 int fn_nfs_remote_id(int argc,  /* IN : number of args in argv */
00605                      char **argv,       /* IN : arg list               */
00606                      FILE * output);    /* IN : output stream          */
00607 
00608 /*------------------------------------------
00609  *       Layers and commands definitions
00610  *-----------------------------------------*/
00611 
00612 /* FSAL command list */
00613 
00614 static command_def_t __attribute__ ((__unused__)) commands_FSAL[] =
00615 {
00616   {
00617   "access", fn_fsal_access, "test access rights"},
00618   {
00619   "callstat", fn_fsal_callstat, "display stats about FSAL calls"},
00620   {
00621   "cat", fn_fsal_cat, "display the content of a file"},
00622   {
00623   "cd", fn_fsal_cd, "change current directory"},
00624   {
00625   "close", fn_fsal_close, "close an opened file"},
00626   {
00627   "close_byfileid", fn_fsal_close, "close an opened file by fileid"},
00628   {
00629   "create", fn_fsal_create, "create a regular file"},
00630   {
00631   "cross", fn_fsal_cross, "traverse a junction"},
00632   {
00633   "getxattr", fn_fsal_getxattr, "display the value of an extended attribute"},
00634   {"handle", fn_fsal_handle, "handle digest/expend operations"},
00635   {"handlecmp", fn_fsal_handlecmp, "compare 2 handles"},
00636   {
00637   "hardlink", fn_fsal_hardlink, "create a hardlink"},
00638   {
00639   "init_fs", fn_fsal_init_fs, "initialize filesystem"},
00640   {
00641   "ln", fn_fsal_ln, "create a symlink"},
00642   {
00643   "ls", fn_fsal_ls, "list contents of directory"},
00644   {
00645   "lsxattrs", fn_fsal_lsxattrs, "list extended attributes for an object"},
00646   {
00647   "mkdir", fn_fsal_mkdir, "create a directory"},
00648   {
00649   "open", fn_fsal_open, "open an existing file"},
00650   {
00651   "open_byname", fn_fsal_open_byname, "open an existing file by name"},
00652   {
00653   "open_byfileid", fn_fsal_open_byfileid, "open an existing file by fileid"},
00654   {
00655   "pwd", fn_fsal_pwd, "print current path"},
00656   {
00657   "rcp", fn_fsal_rcp, "copy a file to/from a local path"},
00658   {
00659   "read", fn_fsal_read, "read data from current file"},
00660   {
00661   "rename", fn_fsal_rename, "rename/move an object"},
00662   {
00663   "setattr", fn_fsal_setattr, "change attributes of an object"},
00664   {
00665   "stat", fn_fsal_stat, "display stat about a filesystem object"},
00666   {
00667   "su", fn_fsal_su, "change current user"},
00668   {
00669   "truncate", fn_fsal_truncate, "change file size"},
00670   {
00671   "unlink", fn_fsal_unlink, "remove a filesystem object"},
00672   {
00673   "write", fn_fsal_write, "write data to current file"},
00674   {
00675   NULL, NULL, NULL}             /* End of command list */
00676 };
00677 
00678 /* Cache inode command list */
00679 
00680 static command_def_t __attribute__ ((__unused__)) commands_Cache_inode[] =
00681 {
00682   {
00683   "access", fn_Cache_inode_access, "test access rights"},
00684   {
00685   "callstat", fn_Cache_inode_callstat, "display stats about FSAL calls"},
00686   {
00687   "cd", fn_Cache_inode_cd, "change current directory"},
00688   {
00689   "close", fn_Cache_inode_close, "close the currently opened file"},
00690   {
00691   "create", fn_Cache_inode_create, "create regular file"},
00692   {
00693   "data_cache", fn_Cache_inode_data_cache, "cache a file in the Data Cache"},
00694   {
00695   "flush_cache", fn_Cache_inode_flush_cache, "flushes a previously Data cached entry"},
00696   {
00697   "gc", fn_Cache_inode_gc, "run the garbagge collector on the cache inode"},
00698   {
00699   "hardlink", fn_Cache_inode_link, "create hard link"},
00700   {
00701   "init_cache", fn_Cache_inode_cache_init, "initialize filesystem"},
00702   {
00703   "invalidate", fn_Cache_inode_invalidate, "invalidate a cached entry"},
00704   {
00705   "ln", fn_Cache_inode_ln, "creates a new symbolic link"},
00706   {
00707   "ls", fn_Cache_inode_ls, "list contents of directory"},
00708   {
00709   "mkdir", fn_Cache_inode_mkdir, "create a new directory"},
00710   {
00711   "open_byname", fn_Cache_inode_open_by_name, "open an existing file by name"},
00712   {
00713   "read", fn_Cache_inode_read, "reads the content of a data cached file"},
00714   {
00715   "recover_cache", fn_Cache_inode_recover_cache, "recover the data cache after a crash"},
00716   {
00717   "refresh_cache", fn_Cache_inode_refresh_cache,
00718         "refreshes a previously Data cached entry"},
00719   {
00720   "release_cache", fn_Cache_inode_release_cache,
00721         "releases a previously Data cached entry"},
00722   {
00723   "rename", fn_Cache_inode_rename, "rename/move an object"},
00724   {
00725   "setattr", fn_Cache_inode_setattr, "change attributes of an object"},
00726   {
00727   "pwd", fn_Cache_inode_pwd, "print current path"},
00728   {
00729   "stat", fn_Cache_inode_stat, "display stat about a filesystem object"},
00730   {
00731   "su", fn_Cache_inode_su, "change current user"},
00732   {
00733   "unlink", fn_Cache_inode_unlink, "unlink an entry in a directory"},
00734   {
00735   "write", fn_Cache_inode_write, "writes the content of a data cached file"},
00736   {
00737   NULL, NULL, NULL}             /* End of command list */
00738 };
00739 
00740 static command_def_t __attribute__ ((__unused__)) commands_NFS[] =
00741 {
00742   {
00743   "nfs_init", fn_nfs_init, "initialize NFS layer"},
00744   {
00745   "mnt1_null", fn_MNT1_command, "MNTPROC_NULL v1"},
00746   {
00747   "mnt1_mount", fn_MNT1_command, "MNTPROC_MNT v1"},
00748   {
00749   "mnt1_dump", fn_MNT1_command, "MNTPROC_DUMP v1"},
00750   {
00751   "mnt1_umount", fn_MNT1_command, "MNTPROC_UMNT v1"},
00752   {
00753   "mnt1_umount_all", fn_MNT1_command, "MNTPROC_UMNTALL v1"},
00754   {
00755   "mnt1_export", fn_MNT1_command, "MNTPROC_EXPORT v1"},
00756   {
00757   "mnt3_null", fn_MNT3_command, "MNTPROC_NULL v3"},
00758   {
00759   "mnt3_mount", fn_MNT3_command, "MNTPROC_MNT v3"},
00760   {
00761   "mnt3_dump", fn_MNT3_command, "MNTPROC_DUMP v3"},
00762   {
00763   "mnt3_umount", fn_MNT3_command, "MNTPROC_UMNT v3"},
00764   {
00765   "mnt3_umount_all", fn_MNT3_command, "MNTPROC_UMNTALL v3"},
00766   {
00767   "mnt3_export", fn_MNT3_command, "MNTPROC_EXPORT v3"},
00768   {
00769   "nfs2_null", fn_NFS2_command, "NFSPROC_NULL"},
00770   {
00771   "nfs2_getattr", fn_NFS2_command, "NFSPROC_GETATTR"},
00772   {
00773   "nfs2_setattr", fn_NFS2_command, "NFSPROC_SETATTR"},
00774   {
00775   "nfs2_root", fn_NFS2_command, "NFSPROC_ROOT"},
00776   {
00777   "nfs2_lookup", fn_NFS2_command, "NFSPROC_LOOKUP"},
00778   {
00779   "nfs2_readlink", fn_NFS2_command, "NFSPROC_READLINK"},
00780   {
00781   "nfs2_read", fn_NFS2_command, "NFSPROC_READ"},
00782   {
00783   "nfs2_writecache", fn_NFS2_command, "NFSPROC_WRITECACHE"},
00784   {
00785   "nfs2_write", fn_NFS2_command, "NFSPROC_WRITE"},
00786   {
00787   "nfs2_create", fn_NFS2_command, "NFSPROC_CREATE"},
00788   {
00789   "nfs2_remove", fn_NFS2_command, "NFSPROC_REMOVE"},
00790   {
00791   "nfs2_rename", fn_NFS2_command, "NFSPROC_RENAME"},
00792   {
00793   "nfs2_link", fn_NFS2_command, "NFSPROC_LINK"},
00794   {
00795   "nfs2_symlink", fn_NFS2_command, "NFSPROC_SYMLINK"},
00796   {
00797   "nfs2_mkdir", fn_NFS2_command, "NFSPROC_MKDIR"},
00798   {
00799   "nfs2_rmdir", fn_NFS2_command, "NFSPROC_RMDIR"},
00800   {
00801   "nfs2_readdir", fn_NFS2_command, "NFSPROC_READDIR"},
00802   {
00803   "nfs2_statfs", fn_NFS2_command, "NFSPROC_STATFS"},
00804   {
00805   "nfs3_null", fn_NFS3_command, "NFSPROC3_NULL"},
00806   {
00807   "nfs3_getattr", fn_NFS3_command, "NFSPROC3_GETATTR"},
00808   {
00809   "nfs3_setattr", fn_NFS3_command, "NFSPROC3_SETATTR"},
00810   {
00811   "nfs3_lookup", fn_NFS3_command, "NFSPROC3_LOOKUP"},
00812   {
00813   "nfs3_access", fn_NFS3_command, "NFSPROC3_ACCESS"},
00814   {
00815   "nfs3_readlink", fn_NFS3_command, "NFSPROC3_READLINK"},
00816   {
00817   "nfs3_read", fn_NFS3_command, "NFSPROC3_READ"},
00818   {
00819   "nfs3_write", fn_NFS3_command, "NFSPROC3_WRITE"},
00820   {
00821   "nfs3_create", fn_NFS3_command, "NFSPROC3_CREATE"},
00822   {
00823   "nfs3_mkdir", fn_NFS3_command, "NFSPROC3_MKDIR"},
00824   {
00825   "nfs3_symlink", fn_NFS3_command, "NFSPROC3_SYMLINK"},
00826   {
00827   "nfs3_mknod", fn_NFS3_command, "NFSPROC3_MKNOD"},
00828   {
00829   "nfs3_remove", fn_NFS3_command, "NFSPROC3_REMOVE"},
00830   {
00831   "nfs3_rmdir", fn_NFS3_command, "NFSPROC3_RMDIR"},
00832   {
00833   "nfs3_rename", fn_NFS3_command, "NFSPROC3_RENAME"},
00834   {
00835   "nfs3_link", fn_NFS3_command, "NFSPROC3_LINK"},
00836   {
00837   "nfs3_readdir", fn_NFS3_command, "NFSPROC3_READDIR"},
00838   {
00839   "nfs3_readdirplus", fn_NFS3_command, "NFSPROC3_READDIRPLUS"},
00840   {
00841   "nfs3_fsstat", fn_NFS3_command, "NFSPROC3_FSSTAT"},
00842   {
00843   "nfs3_fsinfo", fn_NFS3_command, "NFSPROC3_FSINFO"},
00844   {
00845   "nfs3_pathconf", fn_NFS3_command, "NFSPROC3_PATHCONF"},
00846   {
00847   "nfs3_commit", fn_NFS3_command, "NFSPROC3_COMMIT"},
00848   {
00849   "cd", fn_nfs_cd, "change current directory"},
00850   {
00851   "create", fn_nfs_create, "create a regular file"},
00852   {
00853   "hardlink", fn_nfs_hardlink, "create a hard link"},
00854   {
00855   "ln", fn_nfs_ln, "create a symbolic link"},
00856   {
00857   "ls", fn_nfs_ls, "list contents of directory"},
00858   {
00859   "mkdir", fn_nfs_mkdir, "create a directory"},
00860   {
00861   "mount", fn_nfs_mount, "mount an exported path"},
00862   {
00863   "umount", fn_nfs_umount, "umount a mounted path"},
00864   {
00865   "pwd", fn_nfs_pwd, "print current path"},
00866   {
00867   "rename", fn_nfs_rename, "rename/move an object"},
00868   {
00869   "setattr", fn_nfs_setattr, "change object attributes"},
00870   {
00871   "stat", fn_nfs_stat, "show file attributes"},
00872   {
00873   "su", fn_nfs_su, "change current user"},
00874   {
00875   "id", fn_nfs_id, "show who I am"},
00876   {
00877   "unlink", fn_nfs_unlink, "remove an object"},
00878   {
00879   NULL, NULL, NULL}             /* End of NFS command list. */
00880 };
00881 
00882 static command_def_t __attribute__ ((__unused__)) commands_NFS_remote[] =
00883 {
00884   {
00885   "rpc_init", fn_rpc_init, "initialize RPCs"},
00886   {
00887   "mnt1_null", fn_MNT1_remote_command, "MNTPROC_NULL v1"},
00888   {
00889   "mnt1_mount", fn_MNT1_remote_command, "MNTPROC_MNT v1"},
00890   {
00891   "mnt1_dump", fn_MNT1_remote_command, "MNTPROC_DUMP v1"},
00892   {
00893   "mnt1_umount", fn_MNT1_remote_command, "MNTPROC_UMNT v1"},
00894   {
00895   "mnt1_umount_all", fn_MNT1_remote_command, "MNTPROC_UMNTALL v1"},
00896   {
00897   "mnt1_export", fn_MNT1_remote_command, "MNTPROC_EXPORT v1"},
00898   {
00899   "mnt3_null", fn_MNT3_remote_command, "MNTPROC_NULL v3"},
00900   {
00901   "mnt3_mount", fn_MNT3_remote_command, "MNTPROC_MNT v3"},
00902   {
00903   "mnt3_dump", fn_MNT3_remote_command, "MNTPROC_DUMP v3"},
00904   {
00905   "mnt3_umount", fn_MNT3_remote_command, "MNTPROC_UMNT v3"},
00906   {
00907   "mnt3_umount_all", fn_MNT3_remote_command, "MNTPROC_UMNTALL v3"},
00908   {
00909   "mnt3_export", fn_MNT3_remote_command, "MNTPROC_EXPORT v3"},
00910   {
00911   "nfs2_null", fn_NFS2_remote_command, "NFSPROC_NULL"},
00912   {
00913   "nfs2_getattr", fn_NFS2_remote_command, "NFSPROC_GETATTR"},
00914   {
00915   "nfs2_setattr", fn_NFS2_remote_command, "NFSPROC_SETATTR"},
00916   {
00917   "nfs2_root", fn_NFS2_remote_command, "NFSPROC_ROOT"},
00918   {
00919   "nfs2_lookup", fn_NFS2_remote_command, "NFSPROC_LOOKUP"},
00920   {
00921   "nfs2_readlink", fn_NFS2_remote_command, "NFSPROC_READLINK"},
00922   {
00923   "nfs2_read", fn_NFS2_remote_command, "NFSPROC_READ"},
00924   {
00925   "nfs2_writecache", fn_NFS2_remote_command, "NFSPROC_WRITECACHE"},
00926   {
00927   "nfs2_write", fn_NFS2_remote_command, "NFSPROC_WRITE"},
00928   {
00929   "nfs2_create", fn_NFS2_remote_command, "NFSPROC_CREATE"},
00930   {
00931   "nfs2_remove", fn_NFS2_remote_command, "NFSPROC_REMOVE"},
00932   {
00933   "nfs2_rename", fn_NFS2_remote_command, "NFSPROC_RENAME"},
00934   {
00935   "nfs2_link", fn_NFS2_remote_command, "NFSPROC_LINK"},
00936   {
00937   "nfs2_symlink", fn_NFS2_remote_command, "NFSPROC_SYMLINK"},
00938   {
00939   "nfs2_mkdir", fn_NFS2_remote_command, "NFSPROC_MKDIR"},
00940   {
00941   "nfs2_rmdir", fn_NFS2_remote_command, "NFSPROC_RMDIR"},
00942   {
00943   "nfs2_readdir", fn_NFS2_remote_command, "NFSPROC_READDIR"},
00944   {
00945   "nfs2_statfs", fn_NFS2_remote_command, "NFSPROC_STATFS"},
00946   {
00947   "nfs3_null", fn_NFS3_remote_command, "NFSPROC3_NULL"},
00948   {
00949   "nfs3_getattr", fn_NFS3_remote_command, "NFSPROC3_GETATTR"},
00950   {
00951   "nfs3_setattr", fn_NFS3_remote_command, "NFSPROC3_SETATTR"},
00952   {
00953   "nfs3_lookup", fn_NFS3_remote_command, "NFSPROC3_LOOKUP"},
00954   {
00955   "nfs3_access", fn_NFS3_remote_command, "NFSPROC3_ACCESS"},
00956   {
00957   "nfs3_readlink", fn_NFS3_remote_command, "NFSPROC3_READLINK"},
00958   {
00959   "nfs3_read", fn_NFS3_remote_command, "NFSPROC3_READ"},
00960   {
00961   "nfs3_write", fn_NFS3_remote_command, "NFSPROC3_WRITE"},
00962   {
00963   "nfs3_create", fn_NFS3_remote_command, "NFSPROC3_CREATE"},
00964   {
00965   "nfs3_mkdir", fn_NFS3_remote_command, "NFSPROC3_MKDIR"},
00966   {
00967   "nfs3_symlink", fn_NFS3_remote_command, "NFSPROC3_SYMLINK"},
00968   {
00969   "nfs3_mknod", fn_NFS3_remote_command, "NFSPROC3_MKNOD"},
00970   {
00971   "nfs3_remove", fn_NFS3_remote_command, "NFSPROC3_REMOVE"},
00972   {
00973   "nfs3_rmdir", fn_NFS3_remote_command, "NFSPROC3_RMDIR"},
00974   {
00975   "nfs3_rename", fn_NFS3_remote_command, "NFSPROC3_RENAME"},
00976   {
00977   "nfs3_link", fn_NFS3_remote_command, "NFSPROC3_LINK"},
00978   {
00979   "nfs3_readdir", fn_NFS3_remote_command, "NFSPROC3_READDIR"},
00980   {
00981   "nfs3_readdirplus", fn_NFS3_remote_command, "NFSPROC3_READDIRPLUS"},
00982   {
00983   "nfs3_fsstat", fn_NFS3_remote_command, "NFSPROC3_FSSTAT"},
00984   {
00985   "nfs3_fsinfo", fn_NFS3_remote_command, "NFSPROC3_FSINFO"},
00986   {
00987   "nfs3_pathconf", fn_NFS3_remote_command, "NFSPROC3_PATHCONF"},
00988   {
00989   "nfs3_commit", fn_NFS3_remote_command, "NFSPROC3_COMMIT"},
00990   {
00991   "cd", fn_nfs_remote_cd, "change current directory"},
00992   {
00993   "create", fn_nfs_remote_create, "create a regular file"},
00994   {
00995   "hardlink", fn_nfs_remote_hardlink, "create a hard link"},
00996   {
00997   "ln", fn_nfs_remote_ln, "create a symbolic link"},
00998   {
00999   "ls", fn_nfs_remote_ls, "list contents of directory"},
01000   {
01001   "mkdir", fn_nfs_remote_mkdir, "create a directory"},
01002   {
01003   "mount", fn_nfs_remote_mount, "mount an exported path"},
01004   {
01005   "umount", fn_nfs_remote_umount, "umount a mounted path"},
01006   {
01007   "pwd", fn_nfs_remote_pwd, "print current path"},
01008   {
01009   "rename", fn_nfs_remote_rename, "rename/move an object"},
01010   {
01011   "setattr", fn_nfs_remote_setattr, "change object attributes"},
01012   {
01013   "stat", fn_nfs_remote_stat, "show file attributes"},
01014   {
01015   "su", fn_nfs_remote_su, "change current user"},
01016   {
01017   "id", fn_nfs_remote_id, "show who I am"},
01018   {
01019   "unlink", fn_nfs_remote_unlink, "remove an object"},
01020   {
01021   NULL, NULL, NULL}             /* End of NFS command list. */
01022 };
01023 
01028 extern layer_def_t layer_list[];
01029 
01030 #endif