diff --git a/docs/GamUpdates.md b/docs/GamUpdates.md index f83ed6da..90545ab3 100644 --- a/docs/GamUpdates.md +++ b/docs/GamUpdates.md @@ -10,6 +10,10 @@ Add the `-s` option to the end of the above commands to suppress creating the `g See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation +### 6.68.03 + +Fixed bug in `gam create drivefileacl` that caused a trap. + ### 6.68.02 Upgraded to Python 3.12.2 where possible. diff --git a/docs/Google-Data-Transfers.md b/docs/Google-Data-Transfers.md index a1d59201..17997a40 100644 --- a/docs/Google-Data-Transfers.md +++ b/docs/Google-Data-Transfers.md @@ -15,7 +15,7 @@ ::= calendar| currents| - datastudio|"google data studio"| + datastudio|lookerstudio|"google data studio"| drive|gdrive|googledrive|"drive and docs" ::= "(,)*" diff --git a/docs/How-to-Upgrade-from-Standard-GAM.md b/docs/How-to-Upgrade-from-Standard-GAM.md index 1a224605..a85cf95f 100644 --- a/docs/How-to-Upgrade-from-Standard-GAM.md +++ b/docs/How-to-Upgrade-from-Standard-GAM.md @@ -334,7 +334,7 @@ writes the credentials into the file oauth2.txt. admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found -GAMADV-XTD3 6.68.02 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.68.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.1 64-bit final MacOS Sonoma 14.2.1 x86_64 @@ -1002,7 +1002,7 @@ writes the credentials into the file oauth2.txt. C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt C:\GAMADV-XTD3>gam version WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found -GAMADV-XTD3 6.68.02 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.68.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.1 64-bit final Windows-10-10.0.17134 AMD64 diff --git a/docs/Version-and-Help.md b/docs/Version-and-Help.md index 68538497..9c34e270 100644 --- a/docs/Version-and-Help.md +++ b/docs/Version-and-Help.md @@ -3,7 +3,7 @@ Print the current version of Gam with details ``` gam version -GAMADV-XTD3 6.68.02 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.68.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.1 64-bit final MacOS Sonoma 14.2.1 x86_64 @@ -15,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00 Print the current version of Gam with details and time offset information ``` gam version timeoffset -GAMADV-XTD3 6.68.02 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.68.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.1 64-bit final MacOS Sonoma 14.2.1 x86_64 @@ -27,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second Print the current version of Gam with extended details and SSL information ``` gam version extended -GAMADV-XTD3 6.68.02 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.68.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.1 64-bit final MacOS Sonoma 14.2.1 x86_64 @@ -64,7 +64,7 @@ MacOS High Sierra 10.13.6 x86_64 Path: /Users/Admin/bin/gamadv-xtd3 Version Check: Current: 5.35.08 - Latest: 6.68.02 + Latest: 6.68.03 echo $? 1 ``` @@ -72,7 +72,7 @@ echo $? Print the current version number without details ``` gam version simple -6.68.02 +6.68.03 ``` In Linux/MacOS you can do: ``` @@ -82,7 +82,7 @@ echo $VER Print the current version of Gam and address of this Wiki ``` gam help -GAM 6.68.02 - https://github.com/taers232c/GAMADV-XTD3 +GAM 6.68.03 - https://github.com/taers232c/GAMADV-XTD3 Ross Scroggs Python 3.12.1 64-bit final MacOS Sonoma 14.2.1 x86_64 diff --git a/src/GamUpdate.txt b/src/GamUpdate.txt index 1d79e806..58aea96b 100644 --- a/src/GamUpdate.txt +++ b/src/GamUpdate.txt @@ -2,6 +2,10 @@ Merged GAM-Team version +6.68.03 + +Fixed bug in `gam create drivefileacl` that caused a trap. + 6.68.02 Upgraded to Python 3.12.2 where possible. diff --git a/src/gam/__init__.py b/src/gam/__init__.py index 752edbc4..e0391f2a 100755 --- a/src/gam/__init__.py +++ b/src/gam/__init__.py @@ -52535,6 +52535,16 @@ def addFilePathsToInfo(drive, fileTree, fileEntryInfo, filePathInfo, addParentsT else: fileEntryInfo['paths'].append(path) +def _validateACLOwnerType(location, body): + if body.get('role', '') == 'owner' and body['type'] != 'user': + Cmd.SetLocation(location) + usageErrorExit(Msg.INVALID_PERMISSION_ATTRIBUTE_TYPE.format(f'role {body["role"]}', body['type'])) + +def _validateACLAttributes(myarg, location, body, field, validTypes): + if field in body and body['type'] not in validTypes: + Cmd.SetLocation(location-1) + usageErrorExit(Msg.INVALID_PERMISSION_ATTRIBUTE_TYPE.format(myarg, body['type'])) + def _validatePermissionOwnerType(location, body): if 'role' in body: badTypes = body['type']-{'user'} @@ -60190,9 +60200,9 @@ def createDriveFileACL(users, useDomainAdminAccess=False): mappedDomain = mapPermissionsDomains.get(permissionId, None) if mappedDomain: body['domain'] = permissionId = mappedDomain - _validatePermissionOwnerType(roleLocation, body) - _validatePermissionAttributes('allowfilediscovery/withlink', withLinkLocation, body, 'allowFileDiscovery', ['anyone', 'domain']) - _validatePermissionAttributes('expiration', expirationLocation, body, 'expirationTime', ['user', 'group']) + _validateACLOwnerType(roleLocation, body) + _validateACLAttributes('allowfilediscovery/withlink', withLinkLocation, body, 'allowFileDiscovery', ['anyone', 'domain']) + _validateACLAttributes('expiration', expirationLocation, body, 'expirationTime', ['user', 'group']) printKeys, timeObjects = _getDriveFileACLPrintKeysTimeObjects() if csvPF: if showTitles: