This file is indexed.

/usr/share/doc/gfarm-doc/gfarm-v2-protocol-gfs.txt is in gfarm-doc 2.6.7+dfsg-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
記号の意味:
	i, l, s は、xxx_proto.c の扱うフォーマット文字

	フォーマット文字[変数] は、
		「そのフォーマット文字に対応する型」の「変数」回の繰り返し。
	例: s[npaths] … 文字列(s) の npaths 回の繰り返し

------------------------------------------------------------------------

gfsd プロトコル

  クライアント, gfsd からのアクセス
	GFS_PROTO_PROCESS_SET,
	  入力: i:type, b:shared_key, l:pid
	  出力: i:エラー

	GFS_PROTO_OPEN,
	  入力:	i:fd
	  出力:	i:エラー
	GFS_PROTO_OPEN_LOCAL,
	  入力:	i:fd
	  出力:	i:エラー
		エラー == GFARM_ERR_NOERROR の場合:
		ディスクリプタパッシングを用いて、local fd を返す。
	GFS_PROTO_CLOSE,
	  入力:	i:fd
	  出力:	i:エラー
	GFS_PROTO_PREAD,
	  入力: i:fd, i:size, l:offset
	  出力:	i:エラー, b:data
	GFS_PROTO_PWRITE,
	  入力: i:fd, b:buffer, l:offset
	  出力:	i:エラー, i:length
	GFS_PROTO_WRITE,
	  入力: i:fd, b:buffer
	  出力:	i:エラー, i:length, l:offset, l:total_size
	GFS_PROTO_FTRUNCATE
	  入力: i:fd, l:length,
	  出力:	i:エラー
	GFS_PROTO_FSYNC
	  入力: i:fd, i:operation,
	  出力:	i:エラー
	GFS_PROTO_FSTAT,
	  入力: i:fd
	  出力:	i:エラー
		エラー == GFARM_ERR_NOERROR の場合:
		l:size,
		l:atime_sec, i:atime_nsec
		l:mtime_sec, i:mtime_nsec
	GFS_PROTO_CKSUM_SET,
	  入力:	i:fd, s:cksum_type, b:cksum
	  出力:	i:エラー

	GFS_PROTO_LOCK,
	  入力: i:fd, l:start, l:len, i:type, i:whence
	  出力: i:エラー
	GFS_PROTO_TRYLOCK,
	  入力: i:fd, l:start, l:len, i:type, i:whence
	  出力:	i:エラー
	GFS_PROTO_UNLOCK,
	  入力: i:fd, l:start, l:len, i:type, i:whence
	  出力:	i:エラー
	GFS_PROTO_LOCK_INFO,
	  入力: i:fd, l:start, l:len, i:type, i:whence
	  出力:	i:エラー
		エラー == GFARM_ERR_NOERROR の場合:
		l:start, l:len, i:type, s:host, l:pid

	GFS_PROTO_REPLICA_ADD,
	  入力: i:fd
	  出力:	i:エラー

	GFS_PROTO_REPLICA_RECV,
		XXX
	  出力:	i:エラー
			他の gfsd からのアクセス
			replication manager からのアクセス?

	GFS_PROTO_COMMAND,
		いまのところ v1 と同じ

  gfmd からの back channel
	/* from gfmd */

	GFS_PROTO_FHSTAT
	  入力	l:i_node_number, l:i_node_generation
	  出力:	i:エラー
		エラー == GFARM_ERR_NOERROR の場合:
		l:size
		l:atime_sec, i:atime_nsec,
		l:mtime_sec, i:mtime_nsec,
			gfmd から gfsd に対して、i-node 番号を指定して、
			struct gfs_stat を問い合わせる。

	GFS_PROTO_FHREMOVE
	  入力:	l:i_node_number, l:i_node_generation
	  出力:	i:エラー