summaryrefslogtreecommitdiff
path: root/samba/smb-shares.conf.m4
diff options
context:
space:
mode:
Diffstat (limited to 'samba/smb-shares.conf.m4')
-rw-r--r--samba/smb-shares.conf.m4184
1 files changed, 0 insertions, 184 deletions
diff --git a/samba/smb-shares.conf.m4 b/samba/smb-shares.conf.m4
deleted file mode 100644
index e782c03..0000000
--- a/samba/smb-shares.conf.m4
+++ /dev/null
@@ -1,184 +0,0 @@
-ifelse(`
-/etc/samba/smb-shares.m4
-Copyright 2002 Jonas Smedegaard <dr@jones.dk>
-
-$Id: smb-shares.conf.m4,v 1.20 2002-10-28 15:23:23 klaus Exp $
-
-m4 share definitions for generating Samba server smb.conf include file
-
-Usage: m4 -DFQDN=<FQDN> /etc/local-COMMON/samba/smb-shares.conf.m4 > /etc/samba/smb-shares.conf
-
-Depend on file /etc/local-COMMON/file-<FQDN>.m4 containing lines of
-the following syntax:
- _dir(<path>,<uid>,<gid>,<modes>)dnl
- _homefiles(<os>,<mount>,<desc>,<path>[,ro])dnl
- _files(<os>,<mount>,<desc>,<path>,<uid>,<gid>,<modes>[,ro[,<group>]|,rw,<group>[,<othergroup>]])dnl
-where
- <os>: Client operating systems (mac|win|any)
- <mount>: Mount point name
- Some mount points are handled specially:
- "netlogon" has browsing and share modes disabled
- "userprofiles" sets "force user" and pre-creates user subdirectory mode 700
- "reference" allows guests
- "homes" has read/write access and pre-creates directory mode 750
- Samba: Use single word and max. 8 characters for WfW compatibility
- <desc>: Mount point description. Full(?) support for iso8859-1.
- <path>: Full path to mount point directory
- <uid>: user name of owner of mount point directory
- <gid>: group name of owner of mount point directory
- <modes>: Numeric access modes of mount point directory
- ro|rw|rop|rwp: Read-only or read/write access to mount point, and wether it should be private (not publically announced).
- Read-only access if undefined.
- _homefiles are always private.
- _homefiles are by default read-only, except "homes" (see above).
- <group>: Primary group with access to mountpoint.
- If mount point has access "rw" then primary group has read/write access as well.
- <othergroup>: Secondary group with readonly access
-
-Example:
-
- _dir(/home/fsadmin/COMMON,fsadmin,fsadmin,755)dnl
- _files(win,netlogon,Network logon,/etc/samba/netlogon,root,root,755,ro)
- _files(win,userprofiles,User profiles,/home/fsadmin/shares_win/userprofiles,root,root,755)
- _files(win,reference,DEBIAN: Samba Linux server,/home/fsadmin/shares_win/reference)
- _homefiles(win,homes,Personal files,%H/pc))
- _homefiles(mac,,Personal files,~/mac))
- _files(win,soft,softshare,/home/fsadmin/shares_win/software,fsadmin,fsadmin,775)dnl
- _printer(win,LW,Networkprinter queue for Apple LaserWriter 16/600,/tmp,lw)
-
-TODO:
- Support for netatalk is not yet implemented.
- <othergroup> is not yet implemented.
- Get rid of <os>: <othergroup> is now 10nth parameter which is only available in GNU m4.
- All _homefiles (including "homes") should probably have similar access default (read-only, private).
- BROKEN: Homefiles are *not* private currently :-(
-
-')dnl
-changequote(<, >)dnl
-define(<_veto_mac>, </.AppleDouble/.AppleDesktop/Network Trash Folder/DesktopFolderDB/resource.frk/Icon^M/TheVolumeSettingsFolder/>)dnl
-define(<_warn>,
-< // WARNING: $1
->)dnl
-define(<_masks>,
-< create mask = $1
- directory mask = $2
->)dnl
-define(<_pre_mkdir>,
-< root preexec = /bin/bash -c ' \
- /bin/mkdir -p $1 && \
- /bin/chown $2 $1 && \
- /bin/chmod $3 $1 '
->)dnl
-define(<_dir>, <>)dnl
-define(<_files>,
-<ifelse($1,win,
-undefine(<_mkdir>)dnl
-undefine(<_group_read>)dnl
-undefine(<_world_read>)dnl
-undefine(<_user_write>)dnl
-undefine(<_group_write>)dnl
-undefine(<_private>)dnl
-[$2]
- path = $4
-ifelse($3,,,
-< comment = $3
->)ifelse($2,<netlogon>,
-< share modes = no
-define(<_private>)dnl
->,
- $2,<userprofiles>,
-< force user = %u
-define(<_user_write>)dnl
-define(<_mkdir>, <$4/%U>)dnl
-define(<_chown>, <%U>)dnl
-define(<_chmod>, <700>)dnl
->,
- $2,<reference>,
-< guest ok = yes
->,
- $2,<homes>,
-<dnl
-define(<_mkdir>, <$4>)dnl
-define(<_chown>, <%S>)dnl
-define(<_chmod>, <750>)dnl
-define(<_user_write>)dnl
-define(<_group_read>)dnl
-define(<_private>)dnl
->,
-<>)dnl
-ifdef(<_mkdir>,
-_pre_mkdir(<_mkdir>, <_chown>, <_chmod>)dnl
-)dnl
-ifdef($8,
- ifelse($8,ro,
-<dnl
-define(<_group_read>)dnl
->,
- $8,rop,
-<dnl
-define(<_group_read>)dnl
-define(<_private>)dnl
->,
- $8,rw,
-<dnl
-define(<_user_write>)dnl
- ifdef($9,
- ifelse($9,,,
-define(<_group_write>)dnl
-))dnl
->,
- $8,rwp,
-<dnl
-define(<_user_write>)dnl
-define(<_private>)dnl
->,
- _warn(<share access is wrong. Must be either "ro", "rop", "rw" or "rwp">)dnl
-))dnl
-ifdef(<_user_write>,
-< writeable = yes
->ifdef(<_group_write>,
- ifdef(<_world_read>,
- _masks(0664,2775),
- _masks(0660,2770)),
-ifdef(<_group_read>,
- ifdef(<_world_read>,
- _masks(0644,0755),
- _masks(0640,0750)),
- _masks(0600,0700))dnl
-ifdef(<_veto>,
-< delete veto files = Yes
->)dnl
-),
-dnl ***user read, group read***(?)
-dnl ***user read***
-)dnl
-ifelse($9,,,
-< valid users = @$9
->ifdef(<_group_write>,
-< force group = +$9
->))dnl
-ifdef(<_private>,
-< browseable = no
->)dnl
-ifdef(<_veto>,
-< veto files = _veto_mac
->)dnl
-)dnl
->)dnl
-define(<_homefiles>,
-<ifelse($1,win,
-<_files($1,$2,$3,$4,,,,$5)>dnl
-)>)dnl
-define(<_printer>,
-<ifelse($1,win,
-[$2]
-ifelse($3,,,
-< comment = $3
->)dnl
- path = $4
- printable = yes
- printer name = $5
-,<>)dnl
->)dnl
-dnl
-include(/etc/local-COMMON/file-FQDN.m4)dnl