From 30fe74713d2d299e285836172f46b622aa7f4042 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sat, 13 Apr 2002 06:41:27 +0000 Subject: More work on m2 files sharing config. --- samba/smb-shares.m4 | 203 ++++++++++++++++++++++++---------------------------- 1 file changed, 94 insertions(+), 109 deletions(-) (limited to 'samba') diff --git a/samba/smb-shares.m4 b/samba/smb-shares.m4 index 6aca51e..8db5712 100644 --- a/samba/smb-shares.m4 +++ b/samba/smb-shares.m4 @@ -2,7 +2,7 @@ ifelse(` /etc/samba/smb-shares.m4 Copyright 2002 Jonas Smedegaard -$Id: smb-shares.m4,v 1.7 2002-04-07 23:48:42 jonas Exp $ +$Id: smb-shares.m4,v 1.8 2002-04-13 06:41:27 jonas Exp $ m4 share definitions for generating Samba server smb.conf include file @@ -21,7 +21,7 @@ where : group name of mountpoint owner : Numeric access modes of mount point : Full path to mount point - : Primary group with (readonly) access to mountpoint. Public (or whatever limited by filesystem) readonly access if omitted + : Primary group with access to mountpoint (default readonly). Public access if omitted : Secondary group with readonly access Example: @@ -33,117 +33,102 @@ Example: _printer(win,LW,Networkprinter queue for Apple LaserWriter 16/600,/tmp,lw) ')dnl -define(_veto_mac, - `/.AppleDouble/.AppleDesktop/Network Trash Folder/DesktopFolderDB/resource.frk/Icon^M/TheVolumeSettingsFolder/')dnl -define(_share_logon, -[$1] - comment = $2 - path = $3 -)dnl -define(_share_profiles, -[$1] - comment = $2 - path = $3 - force user = %u - writable = yes - browsable = yes - root preexec = '/bin/mkdir $3/%U \ - /bin/chown %U $3/%U \ - /bin/chmod 700 $3/%U' -)dnl -define(_share_reference, -[$1] - comment = $2 - path = $3 - guest ok = yes -)dnl -dnl -define(_share_home, +changequote(<, >)dnl +define(<_veto_mac>, )dnl +define(<_warn>, +< // WARNING: $1 +>)dnl +define(<_masks>, +< create mask = $1 + directory mask = $2 +>)dnl +define(<_pre_mkdir>, +< root preexec = '/bin/mkdir $1 \ + /bin/chown $2 $1 \ + /bin/chmod $3 $1' +>)dnl +define(<_dir>, <>)dnl +define(<_files>, +)dnl +undefine(<_group_read>)dnl +undefine(<_world_read>)dnl +undefine(<_user_write>)dnl +undefine(<_group_write>)dnl [$2] - comment = $3 path = $4 - writeable = yes - root preexec = '/bin/mkdir $4 \ - /bin/chown %S $4 \ - /bin/chmod 700 $4' -)dnl -define(_share_home_mac, -[home_mac] - comment = $1 - path = $2 +ifelse($3,,, +< comment = $3 +>)ifelse($2,, +< browseable = no +>, + $2,, +, <$4/%U>)dnl +define(<_chown>, <%U>)dnl +define(<_chmod>, <700>)dnl +>, + $2,, +< guest ok = yes +>, + $2,, +, <$4>)dnl +define(<_chown>, <%S>)dnl +define(<_chmod>, <644>)dnl +define(<_user_write>)dnl +define(<_group_read>)dnl +define(<_world_read>)dnl +>, +<>)dnl +ifdef(<_mkdir>, +_pre_mkdir(<_mkdir>, <_chown>, <_chmod>)dnl )dnl -define(_share_home_web, -[$1] - comment = $2 - path = $3 - writeable = yes - create mask = 0644 - directory mask = 0755 +ifdef($8, + ifelse($8,ro, +)dnl +>, + $8,rw, + ifdef($9, + ifelse($9,, + _warn(), +)dnl +define(<_group_write>)dnl +>)), + _warn()dnl +))dnl +ifdef(<_user_write>, +< writeable = yes +>ifdef(<_group_write>, + ifdef(<_world_read>, + _masks(0664,0775), + _masks(0660,0770)), +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 -dnl -define(_share_pc, -[$1] - comment = $2 - path = $3 - browsable = yes - writeable = yes - create mask = 0660 - directory mask = 0770 - valid users = @$4 - force group = +$4 -)dnl -define(_share_mac, -[$1] - comment = $2 - path = $3 - browsable = yes - valid users = @$4 - veto files = _veto_mac -)dnl -define(_share_common, -[$1] - comment = $2 - path = $3 - browsable = yes - writeable = yes - create mask = 0660 - directory mask = 0770 - valid users = @$4 - force group = +$4 - delete veto files = Yes - veto files = _veto_mac -)dnl -define(_share_printer, -[$1] - comment = $2 - path = $3 - printable = yes - printer name = $4 -)dnl -dnl -define(_megashare, -[$1] -ifelse($2,,, - comment = $2 -) path = $3 - browsable = yes -ifelse($7,rw, - writeable = yes - create mask = 0660 - directory mask = 0770 -ifelse($8,,, - valid users = @$8 - force group = +$8 -) delete veto files = Yes -) veto files = _veto_mac +ifelse($9,,, +< valid users = @$9 +>ifdef(<_group_write>, +< force group = +$9 +>))dnl +ifdef(<_veto>, +< veto files = _veto_mac +>)dnl )dnl +>)dnl +define(<_homefiles>, +)>)dnl dnl -define(_dir,`')dnl -define(_homefiles,`ifelse($1,win,_share_home($2,$3,$4))')dnl -dnl define(_files,`ifelse($1,win,_megashare($2,$3,$4,$5,$6,$7,$8))')dnl -define(_files,`ifelse($1,win, - ifelse($2,netlogon,_share_logon($2,$3,$4), - $2,profiles,_share_profiles($2,$3,$4), - $2,reference,_share_reference($2,$3,$4), - _share_common($2,$3,$4,$6)))')dnl include(/etc/local-COMMON/file-FQDN.m4)dnl -- cgit v1.2.3