Advertisement
ffilz

all config output

Feb 4th, 2015
725
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 36.63 KB | None | 0 0
  1. [root@localhost src]# tools/findconf.sh
  2. config_item = gpfs_params
  3. CONF_ITEM_BOOL("link_support", true, fsal_staticfsinfo_t, link_support);
  4. CONF_ITEM_BOOL("symlink_support", true, fsal_staticfsinfo_t, symlink_support);
  5. CONF_ITEM_BOOL("cansettime", true, fsal_staticfsinfo_t, cansettime);
  6. CONF_ITEM_MODE("umask", 0, 0777, 0, fsal_staticfsinfo_t, umask);
  7. CONF_ITEM_BOOL("auth_xdev_export", false, fsal_staticfsinfo_t, auth_exportpath_xdev);
  8. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, fsal_staticfsinfo_t, xattr_access_rights);
  9. CONF_ITEM_ENUM_BITS("Delegations", FSAL_OPTION_FILE_READ_DELEG; FSAL_OPTION_FILE_DELEGATIONS; deleg_types, fsal_staticfsinfo_t, delegations);
  10. CONF_ITEM_BOOL("PNFS_MDS", true, fsal_staticfsinfo_t, pnfs_mds);
  11. CONF_ITEM_BOOL("PNFS_DS", true, fsal_staticfsinfo_t, pnfs_ds);
  12. CONF_ITEM_BOOL("fsal_trace", true, fsal_staticfsinfo_t, fsal_trace);
  13. CONF_ITEM_BOOL("fsal_grace", false, fsal_staticfsinfo_t, fsal_grace);
  14. CONFIG_EOL
  15. config_block = gpfs_param
  16. dbus_interface_name = org.ganesha.nfsd.config.fsal.gpfs
  17. name = GPFS
  18. params = gpfs_params
  19. config_item = ds_params
  20. CONF_MAND_IPV4_ADDR("DS_Addr", "127.0.0.1", lustre_pnfs_ds_parameter, ipaddr);
  21. CONF_MAND_INET_PORT("DS_Port", 1024, UINT16_MAX, 3260, lustre_pnfs_ds_parameter, ipport), /* use iscsi port */
  22. CONF_MAND_UI32("DS_Id", 1, UINT32_MAX, 1, lustre_pnfs_ds_parameter, id);
  23. CONFIG_EOL
  24. config_item = pnfs_params
  25. CONF_ITEM_BLOCK("DataServer", ds_params, dataserver_init, dataserver_commit; lustre_pnfs_parameter, ds_list);
  26. CONFIG_EOL
  27. config_item = lustre_params
  28. CONF_ITEM_BOOL("link_support", true, lustre_fsal_module, fs_info.link_support);
  29. CONF_ITEM_BOOL("symlink_support", true, lustre_fsal_module, fs_info.symlink_support);
  30. CONF_ITEM_BOOL("cansettime", true, lustre_fsal_module, fs_info.cansettime);
  31. CONF_ITEM_UI64("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, lustre_fsal_module, fs_info.maxread);
  32. CONF_ITEM_UI64("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, lustre_fsal_module, fs_info.maxwrite);
  33. CONF_ITEM_MODE("umask", 0, 0777, 0, lustre_fsal_module, fs_info.umask);
  34. CONF_ITEM_BOOL("auth_xdev_export", false, lustre_fsal_module, fs_info.auth_exportpath_xdev);
  35. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, lustre_fsal_module, fs_info.xattr_access_rights);
  36. CONF_ITEM_BLOCK("PNFS", pnfs_params, noop_conf_init, lustre_conf_pnfs_commit; lustre_fsal_module, pnfs_param);
  37. CONFIG_EOL
  38. config_block = lustre_param
  39. dbus_interface_name = org.ganesha.nfsd.config.fsal.lustre
  40. name = LUSTRE
  41. params = lustre_params
  42. config_item = pnfs_params
  43. CONF_MAND_UI32("Stripe_Unit", 8192, 1024*1024, 1024, lustre_exp_pnfs_parameter, stripe_unit);
  44. CONF_ITEM_BOOL("pnfs_enabled", false, lustre_exp_pnfs_parameter, pnfs_enabled);
  45. CONFIG_EOL
  46. config_item = export_params
  47. CONF_ITEM_NOOP("name"),
  48. CONF_ITEM_BLOCK("PNFS", pnfs_params, noop_conf_init, noop_conf_commit; lustre_fsal_export, pnfs_param);
  49. CONFIG_EOL
  50. config_block = export_param
  51. dbus_interface_name = org.ganesha.nfsd.config.fsal.lustre
  52. name = FSAL
  53. params = export_params
  54. config_item = export_params
  55. CONF_ITEM_NOOP("name"),
  56. CONF_MAND_STR("volume", 1, MAXPATHLEN, NULL, glexport_params, glvolname);
  57. CONF_MAND_STR("hostname", 1, MAXPATHLEN, NULL, glexport_params, glhostname);
  58. CONF_ITEM_PATH("volpath", 1, MAXPATHLEN, "/", glexport_params, glvolpath);
  59. CONF_ITEM_PATH("glfs_log", 1, MAXPATHLEN, "/tmp/gfapi.log", glexport_params, glfs_log);
  60. CONFIG_EOL
  61. config_block = export_param
  62. dbus_interface_name = org.ganesha.nfsd.config.fsal.gluster-export%d
  63. name = FSAL
  64. params = export_params
  65. config_item = ceph_items
  66. CONF_ITEM_MODE("umask", 0, 0777, 0, ceph_fsal_module, fs_info.umask);
  67. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0, ceph_fsal_module, fs_info.xattr_access_rights);
  68. CONFIG_EOL
  69. config_block = ceph_block
  70. dbus_interface_name = org.ganesha.nfsd.config.fsal.ceph
  71. name = Ceph
  72. params = ceph_items
  73. config_item = xfs_params
  74. CONF_ITEM_BOOL("link_support", true, fsal_staticfsinfo_t, link_support);
  75. CONF_ITEM_BOOL("symlink_support", true, fsal_staticfsinfo_t, symlink_support);
  76. CONF_ITEM_BOOL("cansettime", true, fsal_staticfsinfo_t, cansettime);
  77. CONF_ITEM_UI64("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxread);
  78. CONF_ITEM_UI64("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxwrite);
  79. CONF_ITEM_MODE("umask", 0, 0777, 0, fsal_staticfsinfo_t, umask);
  80. CONF_ITEM_BOOL("auth_xdev_export", false, fsal_staticfsinfo_t, auth_exportpath_xdev);
  81. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, fsal_staticfsinfo_t, xattr_access_rights);
  82. CONFIG_EOL
  83. config_block = xfs_param
  84. dbus_interface_name = org.ganesha.nfsd.config.fsal.xfs
  85. name = XFS
  86. params = xfs_params
  87. config_item = export_params
  88. CONF_ITEM_NOOP("name"),
  89. CONFIG_EOL
  90. config_block = export_param_block
  91. dbus_interface_name = org.ganesha.nfsd.config.fsal.xfs-export%d
  92. name = FSAL
  93. params = export_params
  94. config_item = panfs_params
  95. CONF_ITEM_BOOL("link_support", true, fsal_staticfsinfo_t, link_support);
  96. CONF_ITEM_BOOL("symlink_support", true, fsal_staticfsinfo_t, symlink_support);
  97. CONF_ITEM_BOOL("cansettime", true, fsal_staticfsinfo_t, cansettime);
  98. CONF_ITEM_UI64("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxread);
  99. CONF_ITEM_UI64("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxwrite);
  100. CONF_ITEM_MODE("umask", 0, 0777, 0, fsal_staticfsinfo_t, umask);
  101. CONF_ITEM_BOOL("auth_xdev_export", false, fsal_staticfsinfo_t, auth_exportpath_xdev);
  102. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, fsal_staticfsinfo_t, xattr_access_rights);
  103. CONFIG_EOL
  104. config_block = panfs_param
  105. dbus_interface_name = org.ganesha.nfsd.config.fsal.panfs
  106. name = PANFS
  107. params = panfs_params
  108. config_item_list = fsid_types
  109. CONFIG_LIST_TOK("None", FSID_NO_TYPE),
  110. CONFIG_LIST_TOK("One64", FSID_ONE_UINT64),
  111. CONFIG_LIST_TOK("Major64", FSID_MAJOR_64),
  112. CONFIG_LIST_TOK("Two64", FSID_TWO_UINT64),
  113. CONFIG_LIST_TOK("uuid", FSID_TWO_UINT64),
  114. CONFIG_LIST_TOK("Two32", FSID_TWO_UINT32),
  115. CONFIG_LIST_TOK("Dev", FSID_DEVICE),
  116. CONFIG_LIST_TOK("Device", FSID_DEVICE),
  117. CONFIG_LIST_EOL
  118. config_item = export_params
  119. CONF_ITEM_NOOP("name"),
  120. CONF_ITEM_BOOL("pnfs", false, panfs_fsal_export, pnfs_enabled);
  121. CONF_ITEM_ENUM("fsid_type", -1, fsid_types; panfs_fsal_export, vfs_export.fsid_type);
  122. CONFIG_EOL
  123. config_block = export_param_block
  124. dbus_interface_name = org.ganesha.nfsd.config.fsal.panfs-export%d
  125. name = FSAL
  126. params = export_params
  127. config_item = vfs_params
  128. CONF_ITEM_BOOL("link_support", true, fsal_staticfsinfo_t, link_support);
  129. CONF_ITEM_BOOL("symlink_support", true, fsal_staticfsinfo_t, symlink_support);
  130. CONF_ITEM_BOOL("cansettime", true, fsal_staticfsinfo_t, cansettime);
  131. CONF_ITEM_UI64("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxread);
  132. CONF_ITEM_UI64("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxwrite);
  133. CONF_ITEM_MODE("umask", 0, 0777, 0, fsal_staticfsinfo_t, umask);
  134. CONF_ITEM_BOOL("auth_xdev_export", false, fsal_staticfsinfo_t, auth_exportpath_xdev);
  135. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, fsal_staticfsinfo_t, xattr_access_rights);
  136. CONFIG_EOL
  137. config_block = vfs_param
  138. dbus_interface_name = org.ganesha.nfsd.config.fsal.vfs
  139. name = VFS
  140. params = vfs_params
  141. config_item_list = fsid_types
  142. CONFIG_LIST_TOK("None", FSID_NO_TYPE),
  143. CONFIG_LIST_TOK("One64", FSID_ONE_UINT64),
  144. CONFIG_LIST_TOK("Major64", FSID_MAJOR_64),
  145. CONFIG_LIST_TOK("Two64", FSID_TWO_UINT64),
  146. CONFIG_LIST_TOK("uuid", FSID_TWO_UINT64),
  147. CONFIG_LIST_TOK("Two32", FSID_TWO_UINT32),
  148. CONFIG_LIST_TOK("Dev", FSID_DEVICE),
  149. CONFIG_LIST_TOK("Device", FSID_DEVICE),
  150. CONFIG_LIST_EOL
  151. config_item = export_params
  152. CONF_ITEM_NOOP("name"),
  153. CONF_ITEM_ENUM("fsid_type", -1, fsid_types; vfs_fsal_export, fsid_type);
  154. CONFIG_EOL
  155. config_block = export_param_block
  156. dbus_interface_name = org.ganesha.nfsd.config.fsal.vfs-export%d
  157. name = FSAL
  158. params = export_params
  159. config_item = pt_params
  160. CONF_ITEM_BOOL("link_support", true, fsal_staticfsinfo_t, link_support);
  161. CONF_ITEM_BOOL("symlink_support", true, fsal_staticfsinfo_t, symlink_support);
  162. CONF_ITEM_BOOL("cansettime", true, fsal_staticfsinfo_t, cansettime);
  163. CONF_ITEM_UI64("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxread);
  164. CONF_ITEM_UI64("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, fsal_staticfsinfo_t, maxwrite);
  165. CONF_ITEM_MODE("umask", 0, 0777, 0, fsal_staticfsinfo_t, umask);
  166. CONF_ITEM_BOOL("auth_xdev_export", false, fsal_staticfsinfo_t, auth_exportpath_xdev);
  167. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, fsal_staticfsinfo_t, xattr_access_rights);
  168. CONFIG_EOL
  169. config_block = pt_param
  170. dbus_interface_name = org.ganesha.nfsd.config.fsal.pt
  171. name = PT
  172. params = pt_params
  173. config_item = export_params
  174. CONF_ITEM_NOOP("name"),
  175. CONF_ITEM_I64("pt_export_id", INT64_MIN, INT64_MAX, 1, pt_fsal_export, pt_export_id);
  176. CONFIG_EOL
  177. config_block = export_param
  178. dbus_interface_name = org.ganesha.nfsd.config.fsal.pt-export%d
  179. name = FSAL
  180. params = export_params
  181. config_item = sub_fsal_params
  182. CONF_ITEM_STR("name", 1, 10, NULL, subfsal_args, name);
  183. CONFIG_EOL
  184. config_item = export_params
  185. CONF_ITEM_NOOP("name"),
  186. CONF_RELAX_BLOCK("FSAL", sub_fsal_params, noop_conf_init, subfsal_commit; nullfsal_args, subfsal);
  187. CONFIG_EOL
  188. config_block = export_param
  189. dbus_interface_name = org.ganesha.nfsd.config.fsal.nullfs-export%d
  190. name = FSAL
  191. params = export_params
  192. config_item = zfs_params
  193. CONF_ITEM_BOOL("link_support", true, zfs_fsal_module, fs_info.link_support);
  194. CONF_ITEM_BOOL("symlink_support", true, zfs_fsal_module, fs_info.symlink_support);
  195. CONF_ITEM_BOOL("cansettime", true, zfs_fsal_module, fs_info.cansettime);
  196. CONF_ITEM_UI32("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, zfs_fsal_module, fs_info.maxread);
  197. CONF_ITEM_UI32("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, zfs_fsal_module, fs_info.maxwrite);
  198. CONF_ITEM_MODE("umask", 0, 0777, 0, zfs_fsal_module, fs_info.umask);
  199. CONF_ITEM_BOOL("auth_xdev_export", false, zfs_fsal_module, fs_info.auth_exportpath_xdev);
  200. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, zfs_fsal_module, fs_info.xattr_access_rights);
  201. CONFIG_EOL
  202. config_block = zfs_param
  203. dbus_interface_name = org.ganesha.nfsd.config.fsal.zfs
  204. name = ZFS
  205. params = zfs_params
  206. config_item = export_params
  207. CONF_ITEM_NOOP("name"),
  208. CONF_MAND_STR("zpool", 1, MAXNAMLEN, "tank", zfs_fsal_export, zpool);
  209. CONFIG_EOL
  210. config_block = export_param
  211. dbus_interface_name = org.ganesha.nfsd.config.fsal.zfs-export
  212. name = FSAL
  213. params = export_params
  214. config_item_list = sec_types
  215. CONFIG_LIST_TOK("krb5", RPCSEC_GSS_SVC_NONE),
  216. CONFIG_LIST_TOK("krb5i", RPCSEC_GSS_SVC_INTEGRITY),
  217. CONFIG_LIST_TOK("krb5p", RPCSEC_GSS_SVC_PRIVACY),
  218. CONFIG_LIST_EOL
  219. config_item = proxy_remote_params
  220. CONF_ITEM_UI32("Retry_SleepTime", 0, 60, 10, pxy_client_params, retry_sleeptime);
  221. CONF_MAND_IPV4_ADDR("Srv_Addr", "127.0.0.1", pxy_client_params, srv_addr);
  222. CONF_ITEM_UI32("NFS_Service", 0, UINT32_MAX, 100003, pxy_client_params, srv_prognum);
  223. CONF_ITEM_UI32("NFS_SendSize", 512, FSAL_MAXIOSIZE, 32768, pxy_client_params, srv_sendsize);
  224. CONF_ITEM_UI32("NFS_RecvSize", 512, FSAL_MAXIOSIZE, 32768, pxy_client_params, srv_recvsize);
  225. CONF_ITEM_INET_PORT("NFS_Port", 0, UINT16_MAX, 2049, pxy_client_params, srv_port);
  226. CONF_ITEM_BOOL("Use_Privileged_Client_Port", false, pxy_client_params, use_privileged_client_port);
  227. CONF_ITEM_UI32("RPC_Client_Timeout", 1, 60*4, 60, pxy_client_params, srv_timeout);
  228. CONF_ITEM_STR("Remote_PrincipalName", 0, MAXNAMLEN, NULL, pxy_client_params, remote_principal);
  229. CONF_ITEM_STR("KeytabPath", 0, MAXPATHLEN, "/etc/krb5.keytab" pxy_client_params, keytab);
  230. CONF_ITEM_UI32("Credential_LifeTime", 0, 86400*2, 86400, pxy_client_params, cred_lifetime);
  231. CONF_ITEM_ENUM("Sec_Type", RPCSEC_GSS_SVC_NONE, sec_types, pxy_client_params, sec_type);
  232. CONF_ITEM_BOOL("Active_krb5", false, pxy_client_params, active_krb5);
  233. CONF_ITEM_BOOL("Enable_Handle_Mapping", false, pxy_client_params, enable_handle_mapping);
  234. CONF_ITEM_STR("HandleMap_DB_Dir", 0, MAXPATHLEN, "/var/ganesha/handlemap"; pxy_client_params, hdlmap.databases_directory);
  235. CONF_ITEM_STR("HandleMap_Tmp_Dir", 0, MAXPATHLEN, "/var/ganesha/tmp"; pxy_client_params, hdlmap.temp_directory);
  236. CONF_ITEM_UI32("HandleMap_DB_Count", 1, 16, 8, pxy_client_params, hdlmap.database_count);
  237. CONF_ITEM_UI32("HandleMap_HashTable_Size", 1, 127, 103, pxy_client_params, hdlmap.hashtable_size);
  238. CONFIG_EOL
  239. config_item = proxy_params
  240. CONF_ITEM_BOOL("link_support", true, pxy_fsal_module, fsinfo.link_support);
  241. CONF_ITEM_BOOL("symlink_support", true, pxy_fsal_module, fsinfo.symlink_support);
  242. CONF_ITEM_BOOL("cansettime", true, pxy_fsal_module, fsinfo.cansettime);
  243. CONF_ITEM_UI64("maxread", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, pxy_fsal_module, fsinfo.maxread);
  244. CONF_ITEM_UI64("maxwrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, pxy_fsal_module, fsinfo.maxwrite);
  245. CONF_ITEM_MODE("umask", 0, 0777, 0, pxy_fsal_module, fsinfo.umask);
  246. CONF_ITEM_BOOL("auth_xdev_export", false, pxy_fsal_module, fsinfo.auth_exportpath_xdev);
  247. CONF_ITEM_MODE("xattr_access_rights", 0, 0777, 0400, pxy_fsal_module, fsinfo.xattr_access_rights);
  248. CONF_ITEM_BLOCK("Remote_Server", proxy_remote_params, noop_conf_init, remote_commit; pxy_fsal_module, special);
  249. CONFIG_EOL
  250. config_block = proxy_param
  251. dbus_interface_name = org.ganesha.nfsd.config.fsal.proxy
  252. name = PROXY
  253. params = proxy_params
  254. config_item = _9p_params
  255. CONF_ITEM_UI16("_9P_TCP_Port", 1, UINT16_MAX, _9P_TCP_PORT, _9p_param, _9p_tcp_port);
  256. CONF_ITEM_UI16("_9P_RDMA_Port", 1, UINT16_MAX, _9P_RDMA_PORT, _9p_param, _9p_rdma_port);
  257. CONF_ITEM_UI32("_9P_TCP_Msize", 1024, UINT32_MAX, _9P_TCP_MSIZE, _9p_param, _9p_tcp_msize);
  258. CONF_ITEM_UI32("_9P_RDMA_Msize", 1024, UINT32_MAX, _9P_RDMA_MSIZE, _9p_param, _9p_rdma_msize);
  259. CONF_ITEM_UI16("_9P_RDMA_Backlog", 1, UINT16_MAX, _9P_RDMA_BACKLOG, _9p_param, _9p_rdma_backlog);
  260. CONF_ITEM_UI16("_9P_RDMA_Inpool_size", 1, UINT16_MAX, _9P_RDMA_INPOOL_SIZE, _9p_param, _9p_rdma_inpool_size);
  261. CONF_ITEM_UI16("_9P_RDMA_Outpool_Size", 1, UINT16_MAX, _9P_RDMA_OUTPOOL_SIZE; _9p_param, _9p_rdma_outpool_size);
  262. CONFIG_EOL
  263. config_block = _9p_param_blk
  264. dbus_interface_name = org.ganesha.nfsd.config.9p
  265. name = _9P
  266. params = _9p_params
  267. config_item = fsal_params
  268. CONF_ITEM_STR("Name", 1, 10, NULL, fsal_args, name), /* cheater union */
  269. CONFIG_EOL
  270. config_item = pds_items
  271. CONF_ITEM_UI16("Number", 0, UINT16_MAX, 0, fsal_pnfs_ds, id_servers);
  272. CONF_RELAX_BLOCK("FSAL", fsal_params, fsal_init, fsal_commit; fsal_pnfs_ds, fsal);
  273. CONFIG_EOL
  274. config_block = pds_block
  275. dbus_interface_name = org.ganesha.nfsd.config.ds.%d
  276. name = DS
  277. params = pds_items
  278. config_item = ip_name_params
  279. CONF_ITEM_UI32("Index_Size", 1, 51, PRIME_IP_NAME, ip_name_cache, hash_param.index_size);
  280. CONF_ITEM_UI32("Expiration_Time", 1, 60*60*24, IP_NAME_EXPIRATION, ip_name_cache, expiration_time);
  281. CONFIG_EOL
  282. config_block = nfs_ip_name
  283. dbus_interface_name = org.ganesha.nfsd.config.ip_name
  284. name = NFS_IP_Name
  285. params = ip_name_params
  286. config_item_list = protocols
  287. CONFIG_LIST_TOK("3", CORE_OPTION_NFSV3),
  288. CONFIG_LIST_TOK("nfs3", CORE_OPTION_NFSV3),
  289. CONFIG_LIST_TOK("4", CORE_OPTION_NFSV4),
  290. CONFIG_LIST_TOK("nfs4", CORE_OPTION_NFSV4),
  291. CONFIG_LIST_TOK("9p", CORE_OPTION_9P),
  292. CONFIG_LIST_EOL
  293. config_item = core_params
  294. CONF_ITEM_UI16("NFS_Port", 0, UINT16_MAX, NFS_PORT, nfs_core_param, port[P_NFS]);
  295. CONF_ITEM_UI16("MNT_Port", 0, UINT16_MAX, 0, nfs_core_param, port[P_MNT]);
  296. CONF_ITEM_UI16("NLM_Port", 0, UINT16_MAX, 0, nfs_core_param, port[P_NLM]);
  297. CONF_ITEM_UI16("Rquota_Port", 0, UINT16_MAX, RQUOTA_PORT, nfs_core_param, port[P_RQUOTA]);
  298. CONF_ITEM_IPV4_ADDR("Bind_Addr", "0.0.0.0", nfs_core_param, bind_addr);
  299. CONF_ITEM_UI32("NFS_Program", 1, INT32_MAX, NFS_PROGRAM, nfs_core_param, program[P_NFS]);
  300. CONF_ITEM_UI32("MNT_Program", 1, INT32_MAX, MOUNTPROG, nfs_core_param, program[P_MNT]);
  301. CONF_ITEM_UI32("NLM_Program", 1, INT32_MAX, NLMPROG, nfs_core_param, program[P_NLM]);
  302. CONF_ITEM_UI32("Rquota_Program", 1, INT32_MAX, RQUOTAPROG, nfs_core_param, program[P_RQUOTA]);
  303. CONF_ITEM_UI32("Nb_Worker", 1, 1024*128, NB_WORKER_THREAD_DEFAULT, nfs_core_param, nb_worker);
  304. CONF_ITEM_BOOL("Drop_IO_Errors", false, nfs_core_param, drop_io_errors);
  305. CONF_ITEM_BOOL("Drop_Inval_Errors", false, nfs_core_param, drop_inval_errors);
  306. CONF_ITEM_BOOL("Drop_Delay_Errors", false, nfs_core_param, drop_delay_errors);
  307. CONF_ITEM_UI32("Dispatch_Max_Reqs", 1, 10000, 5000, nfs_core_param, dispatch_max_reqs);
  308. CONF_ITEM_UI32("Dispatch_Max_Reqs_Xprt", 1, 2048, 512, nfs_core_param, dispatch_max_reqs_xprt);
  309. CONF_ITEM_BOOL("DRC_Disabled", false, nfs_core_param, drc.disabled);
  310. CONF_ITEM_UI32("DRC_TCP_Npart", 1, 20, DRC_TCP_NPART, nfs_core_param, drc.tcp.npart);
  311. CONF_ITEM_UI32("DRC_TCP_Size", 1, 32767, DRC_TCP_SIZE, nfs_core_param, drc.tcp.size);
  312. CONF_ITEM_UI32("DRC_TCP_Cachesz", 1, 255, DRC_TCP_CACHESZ, nfs_core_param, drc.tcp.cachesz);
  313. CONF_ITEM_UI32("DRC_TCP_Hiwat", 1, 256, DRC_TCP_HIWAT, nfs_core_param, drc.tcp.hiwat);
  314. CONF_ITEM_UI32("DRC_TCP_Recycle_Npart", 1, 20, DRC_TCP_RECYCLE_NPART, nfs_core_param, drc.tcp.recycle_npart);
  315. CONF_ITEM_UI32("DRC_TCP_Recycle_Expire_S", 0, 60*60, 600, nfs_core_param, drc.tcp.recycle_expire_s);
  316. CONF_ITEM_BOOL("DRC_TCP_Checksum", DRC_TCP_CHECKSUM, nfs_core_param, drc.tcp.checksum);
  317. CONF_ITEM_UI32("DRC_UDP_Npart", 1, 100, DRC_UDP_NPART, nfs_core_param, drc.udp.npart);
  318. CONF_ITEM_UI32("DRC_UDP_Size", 512, 32768, DRC_UDP_SIZE, nfs_core_param, drc.udp.size);
  319. CONF_ITEM_UI32("DRC_UDP_Cachesz", 1, 2047, DRC_UDP_CACHESZ, nfs_core_param, drc.udp.cachesz);
  320. CONF_ITEM_UI32("DRC_UDP_Hiwat", 1, 32768, DRC_UDP_HIWAT, nfs_core_param, drc.udp.hiwat);
  321. CONF_ITEM_BOOL("DRC_UDP_Checksum", DRC_UDP_CHECKSUM, nfs_core_param, drc.udp.checksum);
  322. CONF_ITEM_UI32("RPC_Debug_Flags", 0, UINT32_MAX, TIRPC_DEBUG_FLAGS, nfs_core_param, rpc.debug_flags);
  323. CONF_ITEM_UI32("RPC_Max_Connections", 1, 10000, 1024, nfs_core_param, rpc.max_connections);
  324. CONF_ITEM_UI32("RPC_Idle_Timeout_S", 0, 60*60, 300, nfs_core_param, rpc.idle_timeout_s);
  325. CONF_ITEM_UI32("MaxRPCSendBufferSize", 1, 1048576*9, NFS_DEFAULT_SEND_BUFFER_SIZE; nfs_core_param, rpc.max_send_buffer_size);
  326. CONF_ITEM_UI32("MaxRPCRecvBufferSize", 1, 1048576*9, NFS_DEFAULT_RECV_BUFFER_SIZE; nfs_core_param, rpc.max_recv_buffer_size);
  327. CONF_ITEM_UI32("RPC_Ioq_ThrdMax", 1, 1024*128, 200, nfs_core_param, rpc.ioq_thrd_max);
  328. CONF_ITEM_I64("Decoder_Fridge_Expiration_Delay", 0, 7200, 600, nfs_core_param, decoder_fridge_expiration_delay);
  329. CONF_ITEM_I64("Decoder_Fridge_Block_Timeout", 0, 7200, 600, nfs_core_param, decoder_fridge_block_timeout);
  330. CONF_ITEM_LIST("NFS_Protocols", CORE_OPTION_ALL_VERS, protocols, nfs_core_param, core_options);
  331. CONF_ITEM_LIST("Protocols", CORE_OPTION_ALL_VERS, protocols, nfs_core_param, core_options);
  332. CONF_ITEM_BOOL("NSM_Use_Caller_Name", false, nfs_core_param, nsm_use_caller_name);
  333. CONF_ITEM_BOOL("Clustered", true, nfs_core_param, clustered);
  334. CONF_ITEM_BOOL("Enable_NLM", true, nfs_core_param, enable_NLM);
  335. CONF_ITEM_BOOL("Enable_RQUOTA", true, nfs_core_param, enable_RQUOTA);
  336. CONF_ITEM_BOOL("Enable_Fast_Stats", false, nfs_core_param, enable_FASTSTATS);
  337. CONF_ITEM_I64("Manage_Gids_Expiration", 0, 7*24*60*60, 30*60, nfs_core_param, manage_gids_expiration);
  338. CONF_ITEM_PATH("Plugins_Dir", 1, MAXPATHLEN, FSAL_MODULE_LOC, nfs_core_param, ganesha_modules_loc);
  339. CONF_ITEM_UI32("heartbeat_freq", 0, 5000, 1000, nfs_core_param, heartbeat_freq);
  340. CONFIG_EOL
  341. config_block = nfs_core
  342. dbus_interface_name = org.ganesha.nfsd.config.core
  343. name = NFS_Core_Param
  344. params = core_params
  345. config_item = krb5_params
  346. CONF_ITEM_STR("PrincipalName", 1, MAXPATHLEN, DEFAULT_NFS_PRINCIPAL; nfs_krb5_param, svc.principal);
  347. CONF_ITEM_PATH("KeytabPath", 1, MAXPATHLEN, DEFAULT_NFS_KEYTAB; nfs_krb5_param, keytab);
  348. CONF_ITEM_PATH("CCacheDir", 1, MAXPATHLEN, DEFAULT_NFS_CCACHE_DIR; nfs_krb5_param, ccache_dir);
  349. CONF_ITEM_BOOL("Active_krb5", true, nfs_krb5_param, active_krb5);
  350. CONFIG_EOL
  351. config_block = krb5_param
  352. dbus_interface_name = org.ganesha.nfsd.config.krb5
  353. name = NFS_KRB5
  354. params = krb5_params
  355. config_item = version4_params
  356. CONF_ITEM_BOOL("Graceless", false, nfs_version4_parameter, graceless);
  357. CONF_ITEM_UI32("Lease_Lifetime", 0, 120, LEASE_LIFETIME_DEFAULT, nfs_version4_parameter, lease_lifetime);
  358. CONF_ITEM_UI32("Grace_Period", 0, 180, GRACE_PERIOD_DEFAULT, nfs_version4_parameter, grace_period);
  359. CONF_ITEM_STR("DomainName", 1, MAXPATHLEN, DOMAINNAME_DEFAULT, nfs_version4_parameter, domainname);
  360. CONF_ITEM_PATH("IdmapConf", 1, MAXPATHLEN, "/etc/idmapd.conf", nfs_version4_parameter, idmapconf);
  361. CONF_ITEM_BOOL("UseGetpwnam", GETPWNAMDEF, nfs_version4_parameter, use_getpwnam);
  362. CONF_ITEM_BOOL("Allow_Numeric_Owners", true, nfs_version4_parameter, allow_numeric_owners);
  363. CONF_ITEM_BOOL("Delegations", false, nfs_version4_parameter, allow_delegations);
  364. CONF_ITEM_UI32("Deleg_Recall_Retry_Delay", 0, 10, DELEG_RECALL_RETRY_DELAY_DEFAULT; nfs_version4_parameter, deleg_recall_retry_delay);
  365. CONF_ITEM_BOOL("PNFS_MDS", true, nfs_version4_parameter, pnfs_mds);
  366. CONF_ITEM_BOOL("PNFS_DS", true, nfs_version4_parameter, pnfs_ds);
  367. CONFIG_EOL
  368. config_block = version4_param
  369. dbus_interface_name = org.ganesha.nfsd.config.nfsv4
  370. name = NFSv4
  371. params = version4_params
  372. config_item_list = access_types
  373. CONFIG_LIST_TOK("NONE", 0),
  374. CONFIG_LIST_TOK("RW", (EXPORT_OPTION_RW_ACCESS | EXPORT_OPTION_MD_ACCESS));
  375. CONFIG_LIST_TOK("RO", (EXPORT_OPTION_READ_ACCESS | EXPORT_OPTION_MD_READ_ACCESS));
  376. CONFIG_LIST_TOK("MDONLY", EXPORT_OPTION_MD_ACCESS),
  377. CONFIG_LIST_TOK("MDONLY_RO", EXPORT_OPTION_MD_READ_ACCESS),
  378. CONFIG_LIST_EOL
  379. config_item_list = nfs_protocols
  380. CONFIG_LIST_TOK("3", EXPORT_OPTION_NFSV3),
  381. CONFIG_LIST_TOK("4", EXPORT_OPTION_NFSV4),
  382. CONFIG_LIST_TOK("NFS3", EXPORT_OPTION_NFSV3),
  383. CONFIG_LIST_TOK("NFS4", EXPORT_OPTION_NFSV4),
  384. CONFIG_LIST_TOK("V3", EXPORT_OPTION_NFSV3),
  385. CONFIG_LIST_TOK("V4", EXPORT_OPTION_NFSV4),
  386. CONFIG_LIST_TOK("NFSV3", EXPORT_OPTION_NFSV3),
  387. CONFIG_LIST_TOK("NFSV4", EXPORT_OPTION_NFSV4),
  388. CONFIG_LIST_TOK("9P", EXPORT_OPTION_9P),
  389. CONFIG_LIST_EOL
  390. config_item_list = transports
  391. CONFIG_LIST_TOK("UDP", EXPORT_OPTION_UDP),
  392. CONFIG_LIST_TOK("TCP", EXPORT_OPTION_TCP),
  393. CONFIG_LIST_EOL
  394. config_item_list = sec_types
  395. CONFIG_LIST_TOK("none", EXPORT_OPTION_AUTH_NONE),
  396. CONFIG_LIST_TOK("sys", EXPORT_OPTION_AUTH_UNIX),
  397. CONFIG_LIST_TOK("krb5", EXPORT_OPTION_RPCSEC_GSS_NONE),
  398. CONFIG_LIST_TOK("krb5i", EXPORT_OPTION_RPCSEC_GSS_INTG),
  399. CONFIG_LIST_TOK("krb5p", EXPORT_OPTION_RPCSEC_GSS_PRIV),
  400. CONFIG_LIST_EOL
  401. config_item_list = squash_types
  402. CONFIG_LIST_TOK("Root", EXPORT_OPTION_ROOT_SQUASH),
  403. CONFIG_LIST_TOK("Root_Squash", EXPORT_OPTION_ROOT_SQUASH),
  404. CONFIG_LIST_TOK("RootSquash", EXPORT_OPTION_ROOT_SQUASH),
  405. CONFIG_LIST_TOK("All", EXPORT_OPTION_ALL_ANONYMOUS),
  406. CONFIG_LIST_TOK("All_Squash", EXPORT_OPTION_ALL_ANONYMOUS),
  407. CONFIG_LIST_TOK("AllSquash", EXPORT_OPTION_ALL_ANONYMOUS),
  408. CONFIG_LIST_TOK("All_Anonymous", EXPORT_OPTION_ALL_ANONYMOUS),
  409. CONFIG_LIST_TOK("AllAnonymous", EXPORT_OPTION_ALL_ANONYMOUS),
  410. CONFIG_LIST_TOK("No_Root_Squash", EXPORT_OPTION_ROOT),
  411. CONFIG_LIST_TOK("None", EXPORT_OPTION_ROOT),
  412. CONFIG_LIST_TOK("NoIdSquash", EXPORT_OPTION_ROOT),
  413. CONFIG_LIST_EOL
  414. config_item_list = delegations
  415. CONFIG_LIST_TOK("NONE", EXPORT_OPTION_NO_DELEGATIONS),
  416. CONFIG_LIST_TOK("Read", EXPORT_OPTION_READ_DELEG),
  417. CONFIG_LIST_TOK("Write", EXPORT_OPTION_WRITE_DELEG),
  418. CONFIG_LIST_TOK("Readwrite", EXPORT_OPTION_DELEGATIONS),
  419. CONFIG_LIST_TOK("R", EXPORT_OPTION_READ_DELEG),
  420. CONFIG_LIST_TOK("W", EXPORT_OPTION_WRITE_DELEG),
  421. CONFIG_LIST_TOK("RW", EXPORT_OPTION_DELEGATIONS),
  422. CONFIG_LIST_EOL
  423. config_item_list = deleg_types
  424. CONFIG_LIST_TOK("NONE", FSAL_OPTION_NO_DELEGATIONS),
  425. CONFIG_LIST_TOK("Read", FSAL_OPTION_FILE_READ_DELEG),
  426. CONFIG_LIST_TOK("Write", FSAL_OPTION_FILE_WRITE_DELEG),
  427. CONFIG_LIST_TOK("Readwrite", FSAL_OPTION_FILE_DELEGATIONS),
  428. CONFIG_LIST_TOK("R", FSAL_OPTION_FILE_READ_DELEG),
  429. CONFIG_LIST_TOK("W", FSAL_OPTION_FILE_WRITE_DELEG),
  430. CONFIG_LIST_TOK("RW", FSAL_OPTION_FILE_DELEGATIONS),
  431. CONFIG_LIST_EOL
  432. CONF_EXPORT_PERMS(_struct_, _perms_)                \ /* Note: Access_Type defaults to None on purpose */       \
  433. CONF_ITEM_ENUM_BITS_SET("Access_Type",              \ EXPORT_OPTION_NO_ACCESS; EXPORT_OPTION_ACCESS_TYPE; access_types, _struct_, _perms_.options, _perms_.set);
  434. CONF_ITEM_LIST_BITS_SET("Protocols",                \ EXPORT_OPTION_PROTOCOLS, EXPORT_OPTION_PROTOCOLS; nfs_protocols, _struct_, _perms_.options, _perms_.set);
  435. CONF_ITEM_LIST_BITS_SET("Transports",               \ EXPORT_OPTION_TRANSPORTS, EXPORT_OPTION_TRANSPORTS; transports, _struct_, _perms_.options, _perms_.set);
  436. CONF_ITEM_ANONID("Anonymous_uid",               \ ANON_UID, _struct_, _perms_.anonymous_uid; EXPORT_OPTION_ANON_UID_SET, _perms_.set);
  437. CONF_ITEM_ANONID("Anonymous_gid",               \ ANON_GID, _struct_, _perms_.anonymous_gid; EXPORT_OPTION_ANON_GID_SET, _perms_.set);
  438. CONF_ITEM_LIST_BITS_SET("SecType",              \ EXPORT_OPTION_AUTH_NONE | EXPORT_OPTION_AUTH_UNIX; EXPORT_OPTION_AUTH_TYPES; sec_types, _struct_, _perms_.options, _perms_.set);
  439. CONF_ITEM_BOOLBIT_SET("PrivilegedPort",             \ false, EXPORT_OPTION_PRIVILEGED_PORT; _struct_, _perms_.options, _perms_.set);
  440. CONF_ITEM_BOOLBIT_SET("Manage_Gids",                \ false, EXPORT_OPTION_MANAGE_GIDS; _struct_, _perms_.options, _perms_.set);
  441. CONF_ITEM_LIST_BITS_SET("Squash",               \ EXPORT_OPTION_ROOT_SQUASH, EXPORT_OPTION_SQUASH_TYPES; squash_types, _struct_, _perms_.options, _perms_.set);
  442. CONF_ITEM_BOOLBIT_SET("NFS_Commit",             \ false, EXPORT_OPTION_COMMIT; _struct_, _perms_.options, _perms_.set);
  443. CONF_ITEM_ENUM_BITS_SET("Delegations",              \ EXPORT_OPTION_NO_DELEGATIONS, EXPORT_OPTION_DELEGATIONS; delegations, _struct_, _perms_.options, _perms_.set);
  444. CONF_ITEM_BOOLBIT_SET("Disable_ACL",                \ false, EXPORT_OPTION_DISABLE_ACL; _struct_, _perms_.options, _perms_.set)  /** * @brief Table of client sub-block parameters * * NOTE: node discovery is ordered by this table! * "Access" is last because we must have all other params processed * before we walk the list of accessing clients! */
  445. config_item = client_params
  446. CONF_EXPORT_PERMS(exportlist_client_entry__, client_perms),
  447. CONF_ITEM_STR("Clients", 1, MAXPATHLEN, NULL, exportlist_client_entry__, client.raw_client_str);
  448. CONFIG_EOL
  449. config_item = export_defaults_params
  450. CONF_EXPORT_PERMS(global_export_perms, conf),
  451. CONFIG_EOL
  452. config_item = fsal_params
  453. CONF_ITEM_STR("Name", 1, 10, NULL, fsal_args, name), /* cheater union */
  454. CONFIG_EOL
  455. config_item = export_params
  456. CONF_MAND_UI16("Export_id", 0, UINT16_MAX, 1, gsh_export, export_id);
  457. CONF_MAND_PATH("Path", 1, MAXPATHLEN, NULL, gsh_export, fullpath), /* must chomp '/' */
  458. CONF_UNIQ_PATH("Pseudo", 1, MAXPATHLEN, NULL, gsh_export, pseudopath);
  459. CONF_ITEM_UI64("MaxRead", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, gsh_export, MaxRead);
  460. CONF_ITEM_UI64("MaxWrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, gsh_export, MaxWrite);
  461. CONF_ITEM_UI64("PrefRead", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, gsh_export, PrefRead);
  462. CONF_ITEM_UI64("PrefWrite", 512, FSAL_MAXIOSIZE, FSAL_MAXIOSIZE, gsh_export, PrefWrite);
  463. CONF_ITEM_UI64("PrefReaddir", 512, FSAL_MAXIOSIZE, 16384, gsh_export, PrefReaddir);
  464. CONF_ITEM_FSID_SET("Filesystem_id", 666, 666, gsh_export, filesystem_id, /* major.minor */
  465. CONF_ITEM_STR("Tag", 1, MAXPATHLEN, NULL, gsh_export, FS_tag);
  466. CONF_ITEM_UI64("MaxOffsetWrite", 512, UINT64_MAX, UINT64_MAX, gsh_export, MaxOffsetWrite);
  467. CONF_ITEM_UI64("MaxOffsetRead", 512, UINT64_MAX, UINT64_MAX, gsh_export, MaxOffsetRead);
  468. CONF_ITEM_BOOLBIT_SET("UseCookieVerifier", true, EXPORT_OPTION_USE_COOKIE_VERIFIER; gsh_export, options, options_set);
  469. CONF_ITEM_BOOLBIT_SET("DisableReaddirPlus", false, EXPORT_OPTION_NO_READDIR_PLUS; gsh_export, options, options_set);
  470. CONF_ITEM_BOOLBIT_SET("Trust_Readdir_Negative_Cache", false, EXPORT_OPTION_TRUST_READIR_NEGATIVE_CACHE; gsh_export, options, options_set);
  471. CONF_EXPORT_PERMS(gsh_export, export_perms),
  472. CONF_ITEM_BLOCK("Client", client_params, client_init, client_commit; gsh_export, clients);
  473. CONF_ITEM_I32_SET("Attr_Expiration_Time", -1, INT32_MAX, 60, gsh_export, expire_time_attr; EXPORT_OPTION_EXPIRE_SET,  options_set);
  474. CONF_RELAX_BLOCK("FSAL", fsal_params, fsal_init, fsal_commit; gsh_export, fsal_export);
  475. CONFIG_EOL
  476. config_block = export_param
  477. dbus_interface_name = org.ganesha.nfsd.config.%d
  478. name = EXPORT
  479. params = export_params
  480. config_block = add_export_param
  481. dbus_interface_name = org.ganesha.nfsd.config.%d
  482. name = EXPORT
  483. params = export_params
  484. config_block = export_defaults_param
  485. dbus_interface_name = org.ganesha.nfsd.config.defaults
  486. name = EXPORT_DEFAULTS
  487. params = export_defaults_params
  488. config_item = cache_inode_params
  489. CONF_ITEM_UI32("NParts", 1, 20, 7, cache_inode_parameter, nparts);
  490. CONF_ITEM_I32("Attr_Expiration_Time", -1, INT32_MAX, 60, cache_inode_parameter, expire_time_attr);
  491. CONF_ITEM_BOOL("Use_Getattr_Directory_Invalidation", false, cache_inode_parameter, getattr_dir_invalidation);
  492. CONF_ITEM_UI32("Entries_HWMark", 1, UINT32_MAX, 100000, cache_inode_parameter, entries_hwmark);
  493. CONF_ITEM_UI32("LRU_Run_Interval", 1, 24 * 3600, 90, cache_inode_parameter, lru_run_interval);
  494. CONF_ITEM_BOOL("Cache_FDs", true, cache_inode_parameter, use_fd_cache);
  495. CONF_ITEM_UI32("FD_Limit_Percent", 0, 100, 99, cache_inode_parameter, fd_limit_percent);
  496. CONF_ITEM_UI32("FD_HWMark_Percent", 0, 100, 90, cache_inode_parameter, fd_hwmark_percent);
  497. CONF_ITEM_UI32("FD_LWMark_Percent", 0, 100, 50, cache_inode_parameter, fd_lwmark_percent);
  498. CONF_ITEM_UI32("Reaper_Work", 1, 2000, 1000, cache_inode_parameter, reaper_work);
  499. CONF_ITEM_UI32("Biggest_Window", 1, 100, 40, cache_inode_parameter, biggest_window);
  500. CONF_ITEM_UI32("Required_Progress", 1, 50, 5, cache_inode_parameter, required_progress);
  501. CONF_ITEM_UI32("Futility_Count", 1, 50, 8, cache_inode_parameter, futility_count);
  502. CONF_ITEM_BOOL("Retry_Readdir", false, cache_inode_parameter, retry_readdir);
  503. CONFIG_EOL
  504. config_block = cache_inode_param_blk
  505. dbus_interface_name = org.ganesha.nfsd.config.cache_inode
  506. name = CacheInode
  507. params = cache_inode_params
  508. config_item_list = timeformats
  509. CONFIG_LIST_TOK("ganesha", TD_GANESHA),
  510. CONFIG_LIST_TOK("true", TD_GANESHA),
  511. CONFIG_LIST_TOK("local", TD_LOCAL),
  512. CONFIG_LIST_TOK("8601", TD_8601),
  513. CONFIG_LIST_TOK("ISO-8601", TD_8601),
  514. CONFIG_LIST_TOK("ISO 8601", TD_8601),
  515. CONFIG_LIST_TOK("ISO", TD_8601),
  516. CONFIG_LIST_TOK("syslog", TD_SYSLOG),
  517. CONFIG_LIST_TOK("syslog_usec", TD_SYSLOG_USEC),
  518. CONFIG_LIST_TOK("false", TD_NONE),
  519. CONFIG_LIST_TOK("none", TD_NONE),
  520. CONFIG_LIST_TOK("user_defined", TD_USER),
  521. CONFIG_LIST_EOL
  522. config_item = format_options
  523. CONF_ITEM_ENUM("date_format", TD_GANESHA, timeformats, logfields, datefmt);
  524. CONF_ITEM_ENUM("time_format", TD_GANESHA, timeformats, logfields, timefmt);
  525. CONF_ITEM_STR("user_date_format", 1, MAX_TD_FMT_LEN, NULL, logfields, user_date_fmt);
  526. CONF_ITEM_STR("user_time_format", 1, MAX_TD_FMT_LEN, NULL, logfields, user_time_fmt);
  527. CONF_ITEM_BOOL("EPOCH", true, logfields, disp_epoch);
  528. CONF_ITEM_BOOL("CLIENTIP", false, logfields, disp_clientip);
  529. CONF_ITEM_BOOL("HOSTNAME", true, logfields, disp_host);
  530. CONF_ITEM_BOOL("PROGNAME", true, logfields, disp_prog);
  531. CONF_ITEM_BOOL("PID", true, logfields, disp_pid);
  532. CONF_ITEM_BOOL("THREAD_NAME", true, logfields, disp_threadname);
  533. CONF_ITEM_BOOL("FILE_NAME", true, logfields, disp_filename);
  534. CONF_ITEM_BOOL("LINE_NUM", true, logfields, disp_linenum);
  535. CONF_ITEM_BOOL("FUNCTION_NAME", true, logfields, disp_funct);
  536. CONF_ITEM_BOOL("COMPONENT", true, logfields, disp_comp);
  537. CONF_ITEM_BOOL("LEVEL", true, logfields, disp_level);
  538. CONFIG_EOL
  539. config_item_list = log_levels
  540. CONFIG_LIST_TOK("NULL", NIV_NULL),
  541. CONFIG_LIST_TOK("FATAL", NIV_FATAL),
  542. CONFIG_LIST_TOK("MAJ", NIV_MAJ),
  543. CONFIG_LIST_TOK("CRIT", NIV_CRIT),
  544. CONFIG_LIST_TOK("WARN", NIV_WARN),
  545. CONFIG_LIST_TOK("EVENT", NIV_EVENT),
  546. CONFIG_LIST_TOK("INFO", NIV_INFO),
  547. CONFIG_LIST_TOK("DEBUG", NIV_DEBUG),
  548. CONFIG_LIST_TOK("MID_DEBUG", NIV_MID_DEBUG),
  549. CONFIG_LIST_TOK("M_DBG", NIV_MID_DEBUG),
  550. CONFIG_LIST_TOK("FULL_DEBUG", NIV_FULL_DEBUG),
  551. CONFIG_LIST_TOK("F_DBG", NIV_FULL_DEBUG),
  552. CONFIG_LIST_EOL
  553. config_item = component_levels
  554. CONF_INDEX_TOKEN("ALL", NB_LOG_LEVEL, log_levels, COMPONENT_ALL, int);
  555. CONF_INDEX_TOKEN("LOG", NB_LOG_LEVEL, log_levels, COMPONENT_LOG, int);
  556. CONF_INDEX_TOKEN("LOG_EMERG", NB_LOG_LEVEL, log_levels, COMPONENT_LOG_EMERG, int);
  557. CONF_INDEX_TOKEN("MEMLEAKS", NB_LOG_LEVEL, log_levels, COMPONENT_MEMLEAKS, int);
  558. CONF_INDEX_TOKEN("LEAKS", NB_LOG_LEVEL, log_levels, COMPONENT_MEMLEAKS, int);
  559. CONF_INDEX_TOKEN("FSAL", NB_LOG_LEVEL, log_levels, COMPONENT_FSAL, int);
  560. CONF_INDEX_TOKEN("NFSPROTO", NB_LOG_LEVEL, log_levels, COMPONENT_NFSPROTO, int);
  561. CONF_INDEX_TOKEN("NFS3", NB_LOG_LEVEL, log_levels, COMPONENT_NFSPROTO, int);
  562. CONF_INDEX_TOKEN("NFS_V4", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_V4, int);
  563. CONF_INDEX_TOKEN("NFS4", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_V4, int);
  564. CONF_INDEX_TOKEN("EXPORT", NB_LOG_LEVEL, log_levels, COMPONENT_EXPORT, int);
  565. CONF_INDEX_TOKEN("FILEHANDLE", NB_LOG_LEVEL, log_levels, COMPONENT_FILEHANDLE, int);
  566. CONF_INDEX_TOKEN("FH", NB_LOG_LEVEL, log_levels, COMPONENT_FILEHANDLE, int);
  567. CONF_INDEX_TOKEN("DISPATCH", NB_LOG_LEVEL, log_levels, COMPONENT_DISPATCH, int);
  568. CONF_INDEX_TOKEN("DISP", NB_LOG_LEVEL, log_levels, COMPONENT_DISPATCH, int);
  569. CONF_INDEX_TOKEN("CACHE_INODE", NB_LOG_LEVEL, log_levels, COMPONENT_CACHE_INODE, int);
  570. CONF_INDEX_TOKEN("INODE", NB_LOG_LEVEL, log_levels, COMPONENT_CACHE_INODE, int);
  571. CONF_INDEX_TOKEN("CACHE_INODE_LRU", NB_LOG_LEVEL, log_levels, COMPONENT_CACHE_INODE_LRU, int);
  572. CONF_INDEX_TOKEN("INODE_LRU", NB_LOG_LEVEL, log_levels, COMPONENT_CACHE_INODE_LRU, int);
  573. CONF_INDEX_TOKEN("HASHTABLE", NB_LOG_LEVEL, log_levels, COMPONENT_HASHTABLE, int);
  574. CONF_INDEX_TOKEN("HT", NB_LOG_LEVEL, log_levels, COMPONENT_HASHTABLE, int);
  575. CONF_INDEX_TOKEN("HASHTABLE_CACHE", NB_LOG_LEVEL, log_levels, COMPONENT_HASHTABLE_CACHE, int);
  576. CONF_INDEX_TOKEN("HT_CACHE", NB_LOG_LEVEL, log_levels, COMPONENT_HASHTABLE_CACHE, int);
  577. CONF_INDEX_TOKEN("DUPREQ", NB_LOG_LEVEL, log_levels, COMPONENT_DUPREQ, int);
  578. CONF_INDEX_TOKEN("INIT", NB_LOG_LEVEL, log_levels, COMPONENT_INIT, int);
  579. CONF_INDEX_TOKEN("NFS_STARTUP", NB_LOG_LEVEL, log_levels, COMPONENT_INIT, int);
  580. CONF_INDEX_TOKEN("MAIN", NB_LOG_LEVEL, log_levels, COMPONENT_MAIN, int);
  581. CONF_INDEX_TOKEN("IDMAPPER", NB_LOG_LEVEL, log_levels, COMPONENT_IDMAPPER, int);
  582. CONF_INDEX_TOKEN("NFS_READDIR", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_READDIR, int);
  583. CONF_INDEX_TOKEN("NFS_V4_LOCK", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_V4_LOCK, int);
  584. CONF_INDEX_TOKEN("NFS4_LOCK", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_V4_LOCK, int);
  585. CONFIG, int);
  586. CONF_INDEX_TOKEN("CLIENTID", NB_LOG_LEVEL, log_levels, COMPONENT_CLIENTID, int);
  587. CONF_INDEX_TOKEN("SESSIONS", NB_LOG_LEVEL, log_levels, COMPONENT_SESSIONS, int);
  588. CONF_INDEX_TOKEN("PNFS", NB_LOG_LEVEL, log_levels, COMPONENT_PNFS, int);
  589. CONF_INDEX_TOKEN("RW_LOCK", NB_LOG_LEVEL, log_levels, COMPONENT_RW_LOCK, int);
  590. CONF_INDEX_TOKEN("NLM", NB_LOG_LEVEL, log_levels, COMPONENT_NLM, int);
  591. CONF_INDEX_TOKEN("RPC", NB_LOG_LEVEL, log_levels, COMPONENT_RPC, int);
  592. CONF_INDEX_TOKEN("NFS_CB", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_CB, int);
  593. CONF_INDEX_TOKEN("THREAD", NB_LOG_LEVEL, log_levels, COMPONENT_THREAD, int);
  594. CONF_INDEX_TOKEN("NFS_V4_ACL", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_V4_ACL, int);
  595. CONF_INDEX_TOKEN("NFS4_ACL", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_V4_ACL, int);
  596. CONF_INDEX_TOKEN("STATE", NB_LOG_LEVEL, log_levels, COMPONENT_STATE, int);
  597. CONF_INDEX_TOKEN("_9P", NB_LOG_LEVEL, log_levels, COMPONENT_9P, int);
  598. CONF_INDEX_TOKEN("_9P_DISPATCH", NB_LOG_LEVEL, log_levels, COMPONENT_9P_DISPATCH, int);
  599. CONF_INDEX_TOKEN("_9P_DISP", NB_LOG_LEVEL, log_levels, COMPONENT_9P_DISPATCH, int);
  600. CONF_INDEX_TOKEN("FSAL_UP", NB_LOG_LEVEL, log_levels, COMPONENT_FSAL_UP, int);
  601. CONF_INDEX_TOKEN("DBUS", NB_LOG_LEVEL, log_levels, COMPONENT_DBUS, int);
  602. CONF_INDEX_TOKEN("COMPONENT_NFS_MSK", NB_LOG_LEVEL, log_levels, COMPONENT_NFS_MSK, int);
  603. CONFIG_EOL
  604. config_item_list = header_options
  605. CONFIG_LIST_TOK("none", LH_NONE),
  606. CONFIG_LIST_TOK("component", LH_COMPONENT),
  607. CONFIG_LIST_TOK("all", LH_ALL),
  608. CONFIG_LIST_EOL
  609. config_item_list = enable_options
  610. CONFIG_LIST_TOK("idle", FAC_IDLE),
  611. CONFIG_LIST_TOK("active", FAC_ACTIVE),
  612. CONFIG_LIST_TOK("default", FAC_DEFAULT),
  613. CONFIG_LIST_EOL
  614. config_item = facility_params
  615. CONF_ITEM_STR("name", 1, 20, NULL, facility_config, facility_name);
  616. CONF_MAND_STR("destination", 1, MAXPATHLEN, NULL, facility_config, dest);
  617. CONF_ITEM_TOKEN("max_level", NB_LOG_LEVEL, log_levels, facility_config, max_level);
  618. CONF_ITEM_TOKEN("headers", NB_LH_TYPES, header_options, facility_config, headers);
  619. CONF_ITEM_TOKEN("enable", FAC_IDLE, enable_options, facility_config, state);
  620. CONFIG_EOL
  621. config_item = logging_params
  622. CONF_ITEM_TOKEN("Default_log_level", NB_LOG_LEVEL, log_levels, logger_config, default_level);
  623. CONF_ITEM_BLOCK("Facility", facility_params, facility_init, facility_commit; logger_config, facility_list);
  624. CONF_ITEM_BLOCK("Format", format_options, format_init, format_commit; logger_config, logfields);
  625. CONF_ITEM_BLOCK("Components", component_levels, component_init, component_commit; logger_config, comp_log_level);
  626. CONFIG_EOL
  627. /*/ test
  628. config_block = logging_param
  629. dbus_interface_name = org.ganesha.nfsd.config.log
  630. name = LOG
  631. params = logging_params
  632. config_item = describing
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement