lib/param: Merge struct loadparm_service into common
[kai/samba.git] / lib / param / param_functions.c
1 /*
2    Unix SMB/CIFS implementation.
3    Parameter loading functions
4    Copyright (C) Karl Auer 1993-1998
5
6    Largely re-written by Andrew Tridgell, September 1994
7
8    Copyright (C) Simo Sorce 2001
9    Copyright (C) Alexander Bokovoy 2002
10    Copyright (C) Stefan (metze) Metzmacher 2002
11    Copyright (C) Jim McDonough <jmcd@us.ibm.com> 2003
12    Copyright (C) Michael Adam 2008
13    Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2007
14    Copyright (C) Andrew Bartlett 2011
15
16    This program is free software; you can redistribute it and/or modify
17    it under the terms of the GNU General Public License as published by
18    the Free Software Foundation; either version 3 of the License, or
19    (at your option) any later version.
20
21    This program is distributed in the hope that it will be useful,
22    but WITHOUT ANY WARRANTY; without even the implied warranty of
23    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24    GNU General Public License for more details.
25
26    You should have received a copy of the GNU General Public License
27    along with this program.  If not, see <http://www.gnu.org/licenses/>.
28 */
29
30 FN_LOCAL_STRING(pathname, szPath)
31 FN_LOCAL_LIST(hostsallow, szHostsallow)
32 FN_LOCAL_LIST(hostsdeny, szHostsdeny)
33 FN_LOCAL_STRING(fstype, fstype)
34 FN_LOCAL_LIST(ntvfs_handler, ntvfs_handler)
35 FN_LOCAL_BOOL(msdfs_root, bMSDfsRoot)
36 FN_LOCAL_BOOL(browseable, bBrowseable)
37 FN_LOCAL_BOOL(readonly, bRead_only)
38 FN_LOCAL_BOOL(print_ok, bPrint_ok)
39 FN_LOCAL_BOOL(map_hidden, bMap_hidden)
40 FN_LOCAL_BOOL(map_archive, bMap_archive)
41 FN_LOCAL_BOOL(oplocks, bOpLocks)
42 FN_LOCAL_BOOL(strict_sync, bStrictSync)
43 FN_LOCAL_BOOL(ci_filesystem, bCIFileSystem)
44 FN_LOCAL_BOOL(map_system, bMap_system)
45 FN_LOCAL_INTEGER(max_connections, iMaxConnections)
46 FN_LOCAL_INTEGER(csc_policy, iCSCPolicy)
47 FN_LOCAL_INTEGER(create_mask, iCreate_mask)
48 FN_LOCAL_INTEGER(force_create_mode, iCreate_force_mode)
49 FN_LOCAL_INTEGER(dir_mask, iDir_mask)
50 FN_LOCAL_INTEGER(force_dir_mode, iDir_force_mode)
51 FN_LOCAL_STRING(preexec, szPreExec)
52 FN_LOCAL_STRING(postexec, szPostExec)
53 FN_LOCAL_STRING(rootpreexec, szRootPreExec)
54 FN_LOCAL_STRING(rootpostexec, szRootPostExec)
55 FN_LOCAL_STRING(dontdescend, szDontdescend)
56 FN_LOCAL_STRING(username, szUsername)
57 FN_LOCAL_LIST(invalid_users, szInvalidUsers)
58 FN_LOCAL_LIST(valid_users, szValidUsers)
59 FN_LOCAL_LIST(admin_users, szAdminUsers)
60 FN_LOCAL_STRING(printcommand, szPrintcommand)
61 FN_LOCAL_STRING(lpqcommand, szLpqcommand)
62 FN_LOCAL_STRING(lprmcommand, szLprmcommand)
63 FN_LOCAL_STRING(lppausecommand, szLppausecommand)
64 FN_LOCAL_STRING(lpresumecommand, szLpresumecommand)
65 FN_LOCAL_STRING(queuepausecommand, szQueuepausecommand)
66 FN_LOCAL_STRING(queueresumecommand, szQueueresumecommand)
67 static FN_LOCAL_STRING(_printername, szPrintername)
68 FN_LOCAL_CONST_STRING(printjob_username, szPrintjobUsername)
69 FN_LOCAL_STRING(magicscript, szMagicScript)
70 FN_LOCAL_STRING(magicoutput, szMagicOutput)
71 FN_LOCAL_STRING(comment, comment)
72 FN_LOCAL_STRING(force_user, force_user)
73 FN_LOCAL_STRING(force_group, force_group)
74 FN_LOCAL_LIST(readlist, readlist)
75 FN_LOCAL_LIST(writelist, writelist)
76 FN_LOCAL_LIST(printer_admin, printer_admin)
77 FN_LOCAL_LIST(vfs_objects, szVfsObjects)
78 FN_LOCAL_STRING(msdfs_proxy, szMSDfsProxy)
79 static FN_LOCAL_STRING(volume, volume)
80 FN_LOCAL_STRING(veto_files, szVetoFiles)
81 FN_LOCAL_STRING(hide_files, szHideFiles)
82 FN_LOCAL_STRING(veto_oplocks, szVetoOplockFiles)
83 FN_LOCAL_STRING(aio_write_behind, szAioWriteBehind)
84 FN_LOCAL_STRING(dfree_command, szDfree)
85 FN_LOCAL_BOOL(autoloaded, autoloaded)
86 FN_LOCAL_BOOL(preexec_close, bPreexecClose)
87 FN_LOCAL_BOOL(rootpreexec_close, bRootpreexecClose)
88 FN_LOCAL_INTEGER(casesensitive, iCaseSensitive)
89 FN_LOCAL_BOOL(preservecase, bCasePreserve)
90 FN_LOCAL_BOOL(shortpreservecase, bShortCasePreserve)
91 FN_LOCAL_BOOL(hide_dot_files, bHideDotFiles)
92 FN_LOCAL_BOOL(hide_special_files, bHideSpecialFiles)
93 FN_LOCAL_BOOL(hideunreadable, bHideUnReadable)
94 FN_LOCAL_BOOL(hideunwriteable_files, bHideUnWriteableFiles)
95 FN_LOCAL_BOOL(access_based_share_enum, bAccessBasedShareEnum)
96 FN_LOCAL_BOOL(no_set_dir, bNo_set_dir)
97 FN_LOCAL_BOOL(guest_ok, bGuest_ok)
98 FN_LOCAL_BOOL(guest_only, bGuest_only)
99 FN_LOCAL_BOOL(administrative_share, bAdministrative_share)
100 FN_LOCAL_BOOL(print_notify_backchannel, bPrintNotifyBackchannel)
101 FN_LOCAL_BOOL(store_dos_attributes, bStoreDosAttributes)
102 FN_LOCAL_BOOL(dmapi_support, bDmapiSupport)
103 FN_LOCAL_PARM_BOOL(locking, bLocking)
104 FN_LOCAL_PARM_INTEGER(strict_locking, iStrictLocking)
105 FN_LOCAL_PARM_BOOL(posix_locking, bPosixLocking)
106 FN_LOCAL_BOOL(share_modes, bShareModes)
107 FN_LOCAL_BOOL(level2_oplocks, bLevel2OpLocks)
108 FN_LOCAL_BOOL(onlyuser, bOnlyUser)
109 FN_LOCAL_PARM_BOOL(manglednames, bMangledNames)
110 FN_LOCAL_BOOL(symlinks, bSymlinks)
111 FN_LOCAL_BOOL(syncalways, bSyncAlways)
112 FN_LOCAL_BOOL(strict_allocate, bStrictAllocate)
113 FN_LOCAL_BOOL(delete_readonly, bDeleteReadonly)
114 FN_LOCAL_BOOL(fake_oplocks, bFakeOplocks)
115 FN_LOCAL_BOOL(recursive_veto_delete, bDeleteVetoFiles)
116 FN_LOCAL_BOOL(dos_filemode, bDosFilemode)
117 FN_LOCAL_BOOL(dos_filetimes, bDosFiletimes)
118 FN_LOCAL_BOOL(dos_filetime_resolution, bDosFiletimeResolution)
119 FN_LOCAL_BOOL(fake_dir_create_times, bFakeDirCreateTimes)
120 FN_LOCAL_BOOL(blocking_locks, bBlockingLocks)
121 FN_LOCAL_BOOL(inherit_perms, bInheritPerms)
122 FN_LOCAL_BOOL(inherit_acls, bInheritACLS)
123 FN_LOCAL_BOOL(inherit_owner, bInheritOwner)
124 FN_LOCAL_BOOL(use_client_driver, bUseClientDriver)
125 FN_LOCAL_BOOL(default_devmode, bDefaultDevmode)
126 FN_LOCAL_BOOL(force_printername, bForcePrintername)
127 FN_LOCAL_BOOL(nt_acl_support, bNTAclSupport)
128 FN_LOCAL_BOOL(force_unknown_acl_user, bForceUnknownAclUser)
129 FN_LOCAL_BOOL(ea_support, bEASupport)
130 FN_LOCAL_BOOL(_use_sendfile, bUseSendfile)
131 FN_LOCAL_BOOL(profile_acls, bProfileAcls)
132 FN_LOCAL_BOOL(map_acl_inherit, bMap_acl_inherit)
133 FN_LOCAL_BOOL(afs_share, bAfs_Share)
134 FN_LOCAL_BOOL(acl_check_permissions, bAclCheckPermissions)
135 FN_LOCAL_BOOL(acl_group_control, bAclGroupControl)
136 FN_LOCAL_BOOL(acl_map_full_control, bAclMapFullControl)
137 FN_LOCAL_INTEGER(security_mask, iSecurity_mask)
138 FN_LOCAL_INTEGER(force_security_mode, iSecurity_force_mode)
139 FN_LOCAL_INTEGER(dir_security_mask, iDir_Security_mask)
140 FN_LOCAL_INTEGER(force_dir_security_mode, iDir_Security_force_mode)
141 FN_LOCAL_INTEGER(defaultcase, iDefaultCase)
142 FN_LOCAL_INTEGER(minprintspace, iMinPrintSpace)
143 FN_LOCAL_INTEGER(printing, iPrinting)
144 FN_LOCAL_INTEGER(max_reported_jobs, iMaxReportedPrintJobs)
145 FN_LOCAL_INTEGER(oplock_contention_limit, iOplockContentionLimit)
146 FN_LOCAL_INTEGER(write_cache_size, iWriteCacheSize)
147 FN_LOCAL_INTEGER(block_size, iBlock_size)
148 FN_LOCAL_INTEGER(dfree_cache_time, iDfreeCacheTime)
149 FN_LOCAL_INTEGER(allocation_roundup_size, iallocation_roundup_size)
150 FN_LOCAL_INTEGER(aio_read_size, iAioReadSize)
151 FN_LOCAL_INTEGER(aio_write_size, iAioWriteSize)
152 FN_LOCAL_INTEGER(map_readonly, iMap_readonly)
153 FN_LOCAL_INTEGER(directory_name_cache_size, iDirectoryNameCacheSize)
154 FN_LOCAL_INTEGER(smb_encrypt, ismb_encrypt)
155 FN_LOCAL_CHAR(magicchar, magic_char)
156 FN_LOCAL_STRING(cups_options, szCupsOptions)
157 FN_LOCAL_PARM_BOOL(change_notify, bChangeNotify)
158 FN_LOCAL_PARM_BOOL(kernel_change_notify, bKernelChangeNotify)