704f61bc34a1c3cc0a723cf6271ca12bbc219cf6
[openafs.git] / src / fsint / afsint.xg
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  *
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
8  */
9
10 /*
11  * afsint.xg:
12  *      Definition of the AFS File Server RPC interface.
13  */
14
15 #include "common.xg"                    /*Common structures & definitions*/
16
17 %#define VICECONNBAD    1234
18 %#define VICETOKENDEAD  1235
19 %#define AFS_LOCKWAIT   (5*60)
20
21 typedef afs_int32 ViceDataType;
22
23 %#define Invalid 0
24 %#define File 1
25 %#define Directory 2
26 %#define SymbolicLink 3
27
28 %#ifdef       KERNEL
29 %#define      afs_xdr_array(a,b,c,d,e,f)  afs_xdr_arrayN(a,b,c,d,e,f)
30 %#endif
31
32 struct AFSVolSync {
33     afs_uint32 spare1;
34     afs_uint32 spare2;
35     afs_uint32 spare3;
36     afs_uint32 spare4;
37     afs_uint32 spare5;
38     afs_uint32 spare6;
39 };
40
41 struct AFSFetchStatus {
42     afs_uint32 InterfaceVersion;
43     afs_uint32 FileType;
44     afs_uint32 LinkCount;
45     afs_uint32 Length;
46     afs_uint32 DataVersion;
47     afs_uint32 Author;
48     afs_uint32 Owner;
49     afs_uint32 CallerAccess;
50     afs_uint32 AnonymousAccess;
51     afs_uint32 UnixModeBits;
52     afs_uint32 ParentVnode;
53     afs_uint32 ParentUnique;
54     afs_uint32 ResidencyMask;
55     afs_uint32 ClientModTime;
56     afs_uint32 ServerModTime;
57     afs_uint32 Group;
58     afs_uint32 SyncCounter;
59     afs_uint32 dataVersionHigh; /* For AFS/DFS translator, hi bits of dvn */
60     afs_uint32 lockCount;
61     afs_uint32 Length_hi;
62     afs_uint32 errorCode;
63 };
64
65 struct AFSStoreStatus {
66     afs_uint32 Mask;
67     afs_uint32 ClientModTime;
68     afs_uint32 Owner;
69     afs_uint32 Group;
70     afs_uint32 UnixModeBits;
71     afs_uint32 SegSize;
72 };
73
74 %#define        AFS_SETMODTIME  1
75 %#define        AFS_SETOWNER    2
76 %#define        AFS_SETGROUP            4
77 %#define        AFS_SETMODE             8
78 %#define        AFS_SETSEGSIZE  16
79 %#define        AFS_FSYNC       1024
80
81 typedef afs_int32 ViceVolumeType;
82
83 %#define ReadOnly 0
84 %#define ReadWrite 1
85
86
87 struct ViceDisk {
88     afs_int32   BlocksAvailable;
89     afs_int32   TotalBlocks;
90     DiskName    Name;
91 };
92
93 struct ViceStatistics {
94     afs_uint32 CurrentMsgNumber;
95     afs_uint32 OldestMsgNumber;
96     afs_uint32 CurrentTime;
97     afs_uint32 BootTime;
98     afs_uint32 StartTime;
99     afs_int32     CurrentConnections;
100     afs_uint32 TotalViceCalls;
101     afs_uint32 TotalFetchs;
102     afs_uint32 FetchDatas;
103     afs_uint32 FetchedBytes;
104     afs_int32     FetchDataRate;
105     afs_uint32 TotalStores;
106     afs_uint32 StoreDatas;
107     afs_uint32 StoredBytes;
108     afs_int32     StoreDataRate;
109     afs_uint32 TotalRPCBytesSent;
110     afs_uint32 TotalRPCBytesReceived;
111     afs_uint32 TotalRPCPacketsSent;
112     afs_uint32 TotalRPCPacketsReceived;
113     afs_uint32 TotalRPCPacketsLost;
114     afs_uint32 TotalRPCBogusPackets;
115     afs_int32     SystemCPU;
116     afs_int32     UserCPU;
117     afs_int32     NiceCPU;
118     afs_int32     IdleCPU;
119     afs_int32     TotalIO;
120     afs_int32     ActiveVM;
121     afs_int32     TotalVM;
122     afs_int32     EtherNetTotalErrors;
123     afs_int32     EtherNetTotalWrites;
124     afs_int32     EtherNetTotalInterupts;
125     afs_int32     EtherNetGoodReads;
126     afs_int32     EtherNetTotalBytesWritten;
127     afs_int32     EtherNetTotalBytesRead;
128     afs_int32     ProcessSize;
129     afs_int32     WorkStations;
130     afs_int32     ActiveWorkStations;
131     afs_int32     Spare1;
132     afs_int32     Spare2;
133     afs_int32     Spare3;
134     afs_int32     Spare4;
135     afs_int32     Spare5;
136     afs_int32     Spare6;
137     afs_int32     Spare7;
138     afs_int32     Spare8;
139     ViceDisk      Disk1;
140     ViceDisk      Disk2;
141     ViceDisk      Disk3;
142     ViceDisk      Disk4;
143     ViceDisk      Disk5;
144     ViceDisk      Disk6;
145     ViceDisk      Disk7;
146     ViceDisk      Disk8;
147     ViceDisk      Disk9;
148     ViceDisk      Disk10;
149 };
150
151 struct VolumeStatus {
152     afs_int32 Vid;
153     afs_int32 ParentId;
154     char Online;
155     char InService;
156     char Blessed;
157     char NeedsSalvage;
158     afs_int32 Type;
159     afs_int32 MinQuota;
160     afs_int32 MaxQuota;
161     afs_int32 BlocksInUse;
162     afs_int32 PartBlocksAvail;
163     afs_int32 PartMaxBlocks;
164 };
165
166 struct AFSFetchVolumeStatus {
167     afs_int32 Vid;
168     afs_int32 ParentId;
169     char Online;
170     char InService;
171     char Blessed;
172     char NeedsSalvage;
173     afs_int32 Type;
174     afs_int32 MinQuota;
175     afs_int32 MaxQuota;
176     afs_int32 BlocksInUse;
177     afs_int32 PartBlocksAvail;
178     afs_int32 PartMaxBlocks;
179 };
180
181 struct AFSStoreVolumeStatus {
182     afs_int32 Mask;
183     afs_int32 MinQuota;
184     afs_int32 MaxQuota;
185 };
186
187 const AFS_SETMINQUOTA = 1;
188 const AFS_SETMAXQUOTA = 2;
189
190 struct AFSVolumeInfo {
191     afs_uint32  Vid;
192     afs_int32      Type;
193     afs_uint32  Type0;
194     afs_uint32  Type1;
195     afs_uint32  Type2;
196     afs_uint32  Type3;
197     afs_uint32  Type4;
198     afs_uint32  ServerCount;
199     afs_uint32  Server0;
200     afs_uint32  Server1;
201     afs_uint32  Server2;
202     afs_uint32  Server3;
203     afs_uint32  Server4;
204     afs_uint32  Server5;
205     afs_uint32  Server6;
206     afs_uint32  Server7;
207     unsigned short Port0;
208     unsigned short Port1;
209     unsigned short Port2;
210     unsigned short Port3;
211     unsigned short Port4;
212     unsigned short Port5;
213     unsigned short Port6;
214     unsigned short Port7;
215 };
216
217 struct VolumeInfo {
218     afs_uint32 Vid;
219     afs_int32     Type;
220     afs_uint32 Type0;
221     afs_uint32 Type1;
222     afs_uint32 Type2;
223     afs_uint32 Type3;
224     afs_uint32 Type4;
225     afs_uint32 ServerCount;
226     afs_uint32 Server0;
227     afs_uint32 Server1;
228     afs_uint32 Server2;
229     afs_uint32 Server3;
230     afs_uint32 Server4;
231     afs_uint32 Server5;
232     afs_uint32 Server6;
233     afs_uint32 Server7;
234 };
235
236 typedef afs_int32 ViceLockType;
237 typedef AFSFetchStatus AFSBulkStats<AFSCBMAX>;
238
239 %#define LockRead               0
240 %#define LockWrite              1
241 %#define LockExtend     2
242 %#define LockRelease    3
243
244 typedef afs_int32 ViceOfflineType;
245
246 %#define NoSalvage 0
247 %#define Salvage 1
248
249 %#define MAXCMDINT64S                           3
250 %#define MAXCMDINT32S                           200
251 %#define MAXCMDCHARS                            256
252 %#define CMD_GETRESIDENCIES                     1
253 %#define CMD_CHANGERESIDENCIES                  2
254 %#define CMD_IMPORTRESIDENCIES                  3
255 %#define CMD_GETEXTVOLATTR                      4
256 %#define CMD_SETEXTVOLATTR                      5
257 %#define CMD_GETACCESSHISTORY                   6
258 %#define CMD_MIGRATEFILE                        7
259 %#define CMD_CHECKHSMMETADATA                   8
260 %#define CMD_FETCHSTATUS                        9
261
262 %#define VOLATTR_DESIREDRESIDENCYMASK           1
263 %#define VOLATTR_UNDESIREDRESIDENCYMASK         2
264 %#define VOLATTR_SETSPECIALACCESSFLAG           4
265 struct ExtendedVolAttrInputs {
266     afs_uint32 Mask;
267     afs_uint32 Volume;
268     afs_uint32 DesiredResidencyMask;
269     afs_uint32 Spare1[10];
270     afs_uint32 UnDesiredResidencyMask;
271     afs_uint32 Spare2[9];
272     afs_uint32 SpecialAccessFlag;
273 };
274
275 struct ExtendedVolAttrOutputs {
276     afs_uint32 DesiredResidencyMask;
277     afs_uint32 Spare1[10];
278     afs_uint32 UnDesiredResidencyMask;
279     afs_uint32 Spare2[9];
280     afs_uint32 SpecialAccessFlag;
281 };
282
283 struct TagsArray {
284     afs_uint32 TagsArray_len;
285     afs_uint32 TagsArray_val[184];
286 };
287
288 struct AccessHistory {
289     afs_uint64 Size;
290     afs_uint32 ModTime;
291     afs_uint32 NonSpoolingFetches;
292     afs_uint32 UserSpoolingFetches;
293     afs_uint32 MigratorSpoolingFetches;
294     afs_uint32 LastUserMigrationEvent;
295     afs_uint32 MigrateMe;
296     afs_uint32 Time0;
297     afs_uint32 Type0;
298     afs_uint32 LocalAccess0;
299     afs_uint32 Residency0;
300     afs_uint32 Time1;
301     afs_uint32 Type1;
302     afs_uint32 LocalAccess1;
303     afs_uint32 Residency1;
304     afs_uint32 Time2;
305     afs_uint32 Type2;
306     afs_uint32 LocalAccess2;
307     afs_uint32 Residency2;
308     afs_uint32 Time3;
309     afs_uint32 Type3;
310     afs_uint32 LocalAccess3;
311     afs_uint32 Residency3;
312     afs_uint32 Time4;
313     afs_uint32 Type4;
314     afs_uint32 LocalAccess4;
315     afs_uint32 Residency4;
316 };
317
318 struct AccessHistoryOld {
319     afs_uint32 Size;
320     afs_uint32 ModTime;
321     afs_uint32 NonSpoolingFetches;
322     afs_uint32 UserSpoolingFetches;
323     afs_uint32 MigratorSpoolingFetches;
324     afs_uint32 LastUserMigrationEvent;
325     afs_uint32 MigrateMe;
326     afs_uint32 Time0;
327     afs_uint32 Type0;
328     afs_uint32 LocalAccess0;
329     afs_uint32 Residency0;
330     afs_uint32 Time1;
331     afs_uint32 Type1;
332     afs_uint32 LocalAccess1;
333     afs_uint32 Residency1;
334     afs_uint32 Time2;
335     afs_uint32 Type2;
336     afs_uint32 LocalAccess2;
337     afs_uint32 Residency2;
338     afs_uint32 Time3;
339     afs_uint32 Type3;
340     afs_uint32 LocalAccess3;
341     afs_uint32 Residency3;
342     afs_uint32 Time4;
343     afs_uint32 Type4;
344     afs_uint32 LocalAccess4;
345     afs_uint32 Residency4;
346 };
347
348 struct FsCmdInputs {
349     afs_int32  command;
350     struct AFSFid fid;
351     afs_int64  int64s[MAXCMDINT64S];
352     afs_uint32 int32s[MAXCMDINT32S];
353     char       chars[MAXCMDCHARS];
354 };
355
356 struct FsCmdOutputs {
357     afs_int32  code;
358     struct AFSFetchStatus status;
359     afs_int64  int64s[MAXCMDINT64S];
360     afs_uint32 int32s[MAXCMDINT32S];
361     char       chars[MAXCMDCHARS];
362 };
363
364 %#define ResidencyCmdInputs FsCmdInputs
365 %#define ResidencyCmdOutputs FsCmdOutputs
366
367 const FLUSHMAX = 10;
368 typedef afs_int32 ViceIds<FLUSHMAX>;
369 typedef afs_int32 IPAddrs<FLUSHMAX>;
370
371 package RXAFS_
372 prefix S
373 statindex 7
374
375 FetchData(
376   IN  AFSFid *Fid,
377   afs_int32 Pos,
378   afs_int32 Length,
379   OUT AFSFetchStatus *OutStatus,
380   AFSCallBack *CallBack,
381   AFSVolSync *Sync
382 ) split = 130;
383
384 FetchACL(
385   IN  AFSFid *Fid,
386   OUT AFSOpaque *AccessList,
387   AFSFetchStatus *OutStatus,
388   AFSVolSync *Sync
389 ) = 131;
390
391 FetchStatus(
392   IN  AFSFid *Fid,
393   OUT AFSFetchStatus *OutStatus,
394   AFSCallBack *CallBack,
395   AFSVolSync *Sync
396 ) = 132;
397
398 StoreData(
399   IN  AFSFid *Fid,
400   AFSStoreStatus *InStatus,
401   afs_uint32 Pos,
402   afs_uint32 Length,
403   afs_uint32 FileLength,
404   OUT AFSFetchStatus *OutStatus,
405   AFSVolSync *Sync
406 ) split = 133;
407
408 StoreACL(
409   IN  AFSFid *Fid,
410   AFSOpaque *AccessList,
411   OUT AFSFetchStatus *OutStatus,
412   AFSVolSync *Sync
413 ) = 134;
414
415 StoreStatus(
416   IN  AFSFid *Fid,
417   AFSStoreStatus *InStatus,
418   OUT AFSFetchStatus *OutStatus,
419   AFSVolSync *Sync
420 ) = 135;
421
422 RemoveFile(
423   IN  AFSFid *DirFid,
424   string Name<AFSNAMEMAX>,
425   OUT AFSFetchStatus *OutStatus,
426   AFSVolSync *Sync
427 ) = 136;
428
429 CreateFile(
430   IN  AFSFid *DirFid,
431   string Name<AFSNAMEMAX>,
432   AFSStoreStatus *InStatus,
433   OUT AFSFid *OutFid,
434   AFSFetchStatus *OutFidStatus,
435   AFSFetchStatus *OutDirStatus,
436   AFSCallBack *CallBack,
437   AFSVolSync *Sync) = 137;
438
439 Rename(
440   IN  AFSFid *OldDirFid,
441   string OldName<AFSNAMEMAX>,
442   AFSFid *NewDirFid,
443   string NewName<AFSNAMEMAX>,
444   OUT AFSFetchStatus *OutOldDirStatus,
445   AFSFetchStatus *OutNewDirStatus,
446   AFSVolSync *Sync
447 ) = 138;
448
449 Symlink(
450   IN  AFSFid *DirFid,
451   string Name<AFSNAMEMAX>,
452   string LinkContents<AFSPATHMAX>,
453   AFSStoreStatus *InStatus,
454   OUT AFSFid *OutFid,
455   AFSFetchStatus *OutFidStatus,
456   AFSFetchStatus *OutDirStatus,
457   AFSVolSync *Sync
458 ) = 139;
459
460 Link(
461   IN  AFSFid *DirFid,
462   string Name<AFSNAMEMAX>,
463   AFSFid *ExistingFid,
464   OUT AFSFetchStatus *OutFidStatus,
465   AFSFetchStatus *OutDirStatus,
466   AFSVolSync *Sync
467 ) = 140;
468
469 MakeDir(
470   IN  AFSFid *DirFid,
471   string Name<AFSNAMEMAX>,
472   AFSStoreStatus *InStatus,
473   OUT AFSFid *OutFid,
474   AFSFetchStatus *OutFidStatus,
475   AFSFetchStatus *OutDirStatus,
476   AFSCallBack *CallBack,
477   AFSVolSync *Sync
478 ) = 141;
479
480 RemoveDir(
481   IN  AFSFid *DirFid,
482   string Name<AFSNAMEMAX>,
483   OUT AFSFetchStatus *OutDirStatus,
484   AFSVolSync *Sync
485 ) = 142;
486
487 OldSetLock(
488   IN  AFSFid *Fid,
489   ViceLockType Type,
490   AFSVolSync *Sync
491 ) = 143;
492
493 OldExtendLock(
494   IN  AFSFid *Fid,
495   AFSVolSync *Sync
496 ) = 144;
497
498 OldReleaseLock(
499   IN  AFSFid *Fid,
500   AFSVolSync *Sync
501 ) = 145;
502
503 GetStatistics(
504   OUT ViceStatistics *Statistics
505 ) = 146;
506
507 GiveUpCallBacks(
508   IN  AFSCBFids *Fids_Array,
509   AFSCBs *CallBacks_Array
510 ) = 147;
511
512 GetVolumeInfo(
513   IN  string VolumeName<AFSNAMEMAX>,
514   OUT VolumeInfo *Volumeinfo
515 ) = 148;
516
517 GetVolumeStatus(
518   IN  afs_int32 Volumeid,
519   OUT AFSFetchVolumeStatus *Volumestatus,
520   string Name<AFSNAMEMAX>,
521   string OfflineMsg<AFSOPAQUEMAX>,
522   string Motd<AFSOPAQUEMAX>
523 ) = 149;
524
525 SetVolumeStatus(
526   IN  afs_int32 Volumeid,
527   AFSStoreVolumeStatus *Volumestatus,
528   string Name<AFSNAMEMAX>,
529   string OfflineMsg<AFSOPAQUEMAX>,
530   string Motd<AFSOPAQUEMAX>
531 ) = 150;
532
533 GetRootVolume(
534   OUT string VolumeName<AFSNAMEMAX>
535 ) = 151;
536
537 CheckToken(
538   IN  afs_int32 ViceId,
539   AFSOpaque *token
540 ) = 152;
541
542 GetTime(
543   OUT afs_uint32 *Seconds,
544   afs_uint32 *USeconds
545 ) multi = 153;
546
547 NGetVolumeInfo(
548   IN  string VolumeName<AFSNAMEMAX>,
549   OUT AFSVolumeInfo *stuff
550 ) = 154;
551
552 BulkStatus(
553   IN  AFSCBFids *FidsArray,
554   OUT AFSBulkStats *StatArray,
555   AFSCBs *CBArray,
556   AFSVolSync *Sync
557 ) = 155;
558
559 SetLock(
560   IN  AFSFid *Fid,
561   ViceLockType Type,
562   OUT AFSVolSync *Sync
563 ) = 156;
564
565 ExtendLock(
566   IN  AFSFid *Fid,
567   OUT AFSVolSync *Sync
568 ) = 157;
569
570 ReleaseLock(
571   IN  AFSFid *Fid,
572   OUT AFSVolSync *Sync
573 ) = 158;
574
575 XStatsVersion(
576   OUT afs_int32 *versionNumberP
577 ) = 159;
578
579 GetXStats(
580   IN  afs_int32 clientVersionNumber,
581   afs_int32 collectionNumber,
582   OUT afs_int32 *srvVersionNumberP,
583   afs_int32 *timeP,
584   AFS_CollData *dataP
585 ) = 160;
586
587 /* This interface is to supported the AFS/DFS Protocol Translator */
588 Lookup(
589   IN  AFSFid *DirFid,
590   string Name<AFSNAMEMAX>,
591   OUT AFSFid *OutFid,
592   AFSFetchStatus *OutFidStatus,
593   AFSFetchStatus *OutDirStatus,
594   AFSCallBack *CallBack,
595   AFSVolSync *Sync
596 ) = 161;
597
598 FlushCPS(
599   IN  ViceIds *IdsArray,
600   IPAddrs *AddrsArray,
601   afs_int32    spare1,
602   OUT afs_int32    *spare2,
603   afs_int32    *spare3
604 ) = 162;
605
606 DFSSymlink(
607   IN  AFSFid *DirFid,
608   string Name<AFSNAMEMAX>,
609   string LinkContents<AFSPATHMAX>,
610   AFSStoreStatus *InStatus,
611   OUT AFSFid *OutFid,
612   AFSFetchStatus *OutFidStatus,
613   AFSFetchStatus *OutDirStatus,
614   AFSCallBack *CallBack,
615   AFSVolSync *Sync
616 ) = 163;
617
618 FsCmd(
619   IN AFSFid *Fid,
620   IN struct FsCmdInputs *Inputs,
621   OUT struct FsCmdOutputs *Outputs
622 ) = 220;
623
624 #ifdef RPC_CLIENT
625 %int RXAFS_ResidencyCmd(struct rx_connection *z_conn, AFSFid *Fid, struct FsCmdInputs *Inputs, struct FsCmdOutputs *Outputs)
626 %{
627 %  return RXAFS_FsCmd(z_conn, Fid, Inputs, Outputs);
628 %}
629 #endif
630
631 InlineBulkStatus(
632   IN  AFSCBFids *FidsArray,
633   OUT AFSBulkStats *StatArray,
634   AFSCBs *CBArray,
635   AFSVolSync *Sync
636 ) = 65536;
637
638 FetchData64(
639   IN  AFSFid *Fid,
640   afs_int64 Pos,
641   afs_int64 Length,
642   OUT AFSFetchStatus *OutStatus,
643   AFSCallBack *CallBack,
644   AFSVolSync *Sync
645 ) split = 65537;
646
647 StoreData64(
648   IN  AFSFid *Fid,
649   AFSStoreStatus *InStatus,
650   afs_uint64 Pos,
651   afs_uint64 Length,
652   afs_uint64 FileLength,
653   OUT AFSFetchStatus *OutStatus,
654   AFSVolSync *Sync
655 ) split = 65538;
656
657 GiveUpAllCallBacks(
658 ) multi = 65539;
659
660 GetCapabilities(
661   Capabilities *capabilities
662 ) multi = 65540;
663
664 CallBackRxConnAddr(
665   IN afs_int32 *addr
666 ) = 65541;
667
668 %#define STATS64_CURRENTTIME 0
669 %#define STATS64_BOOTTIME 1
670 %#define STATS64_STARTTIME 2
671 %#define STATS64_CURRENTCONNECTIONS 3
672 %#define STATS64_TOTALFETCHES 4
673 %#define STATS64_FETCHDATAS 5
674 %#define STATS64_FETCHEDBYTES 6
675 %#define STATS64_FETCHDATARATE 7
676 %#define STATS64_TOTALSTORES 8
677 %#define STATS64_STOREDATAS 9
678 %#define STATS64_STOREDBYTES 10
679 %#define STATS64_STOREDATARATE 11
680 %#define STATS64_TOTALVICECALLS 12
681 %#define STATS64_WORKSTATIONS 13
682 %#define STATS64_ACTIVEWORKSTATIONS 14
683 %#define STATS64_PROCESSSIZE 15
684
685 const STATS64_VERSION = 16;
686 typedef afs_uint64 ViceStatistics64<STATS64_VERSION>;
687
688 /* the "version" is a number representing the number of
689    array elements to return, from 0 to N-1 */
690
691 GetStatistics64(
692     IN afs_int32 statsVersion,
693     OUT ViceStatistics64 *Statistics
694 ) = 65542;
695
696 /* rx osd. put here now to hold version numbers.
697 ServerPath(
698   IN  AFSFid *Fid,
699   afs_int32 writing,
700   OUT FilePath *NameiInfo,
701   AFSFetchStatus *OutStatus,
702   AFSCallBack *CallBack
703 ) = 65551;
704
705 PerfTest(
706   IN  afs_int32 type,
707   afs_int64 bytes,
708   afs_int32 bufsize
709 ) split = 65552;
710
711 GetOSDlocation(
712   IN AFSFid *Fid,
713   afs_uint64 offset,
714   afs_uint64 length,
715   afs_int32 flag,
716   afsUUID uuid,
717   OUT AFSFetchStatus *OutStatus,
718   AFSCallBack *CallBack,
719   struct osd_file *osd
720 ) = 65557;
721
722 InverseLookup(
723   IN AFSFid *Fid,
724   afs_uint32 parent,
725   OUT struct afs_filename *file,
726   afs_uint32 *nextparent
727 ) = 65558;
728
729 CheckOSDconns() = 65559;
730
731 OsdPolicy(IN AFSFid *Fid,
732   afs_uint64 length,
733   OUT afs_uint32 *protocol
734 ) = 65560;
735
736 SetOsdFileReady(
737   IN AFSFid *Fid
738 ) = 65561;
739
740 GetOsdMetadata(
741   IN AFSFid *Fid
742 ) split = 65562;
743 */