Commit Graph

5332 Commits

Author SHA1 Message Date
Virtually Nick
180253dad3 Merge staging/1.1.0 changes back to master. 2020-01-24 02:20:26 -05:00
Virtually Nick
3805a7527d GUACAMOLE-936: Merge LdapNetworkConnection must be closed 2020-01-24 02:18:12 -05:00
Michael Jumper
00327706b0 GUACAMOLE-936: Each LdapNetworkConnection must be closed or threads are leaked, causing Tomcat to fail to shutdown. 2020-01-22 22:07:11 -08:00
Virtually Nick
59c430870d Merge staging/1.1.0 changes back to master. 2020-01-20 03:48:44 -05:00
Virtually Nick
09b2400d89 GUACAMOLE-929: Merge update copyright date to 2020. 2020-01-20 03:47:53 -05:00
Virtually Nick
f8456b7282 Merge staging/1.1.0 changes back to master. 2020-01-20 03:36:12 -05:00
Virtually Nick
e2e5853991 GUACAMOLE-930: Merge remove unnecessary $scope.$apply(). 2020-01-20 03:33:56 -05:00
Michael Jumper
b8008baf6c GUACAMOLE-930: Remove unnecessary $scope.$apply().
$q and $http promises, such as the promise returned by
languageService.getLanguages(), will already implicitly $apply() when
needed.
2020-01-19 19:41:55 -08:00
Michael Jumper
76c1b0f9bb GUACAMOLE-929: Update copyright date to 2020. 2020-01-19 13:39:54 -08:00
Virtually Nick
e450e201ec GUACAMOLE-905: Merge automatically resume AudioContext when recording starts. 2020-01-12 20:22:10 -05:00
Michael Jumper
e27fe504a9 GUACAMOLE-905: Automatically resume AudioContext when recording starts.
The AudioContext is paused by default in Google Chrome as a defense
against autoplay. It can be explicitly resumed with resume() as long as
there has been enough interaction with the page.
2020-01-12 17:19:18 -08:00
Virtually Nick
720c0bd43d GUACOMOLE-300: Merge support posixGroup in LDAP Authentication and Group-based Session Admission 2020-01-11 04:43:58 -05:00
Magnus Lewis-Smith
ac0b8a9865 GUACAMOLE-300: fix guac-style whitespace issues 2020-01-08 11:50:40 +00:00
Virtually Nick
a0bac666db GUACAMOLE-732: Merge retrieve audio stream via Promise for newer versions of getUserMedia(). 2019-12-24 01:26:27 -05:00
Michael Jumper
e93d3e00f2 GUACAMOLE-732: Retrieve audio stream via Promise for newer versions of getUserMedia(). 2019-12-23 20:40:34 -08:00
Magnus Lewis-Smith
41fec2793d GUACAMOLE-300: conform to guac-style style guidelines
https://guacamole.apache.org/guac-style/
2019-10-23 12:34:23 +01:00
Magnus Lewis-Smith
450af91be9 GUACAMOLE-300: Support posixGroup in LDAP Authentication and Group-based Session Admission
reset/rebase/squash a chaos of commits:
- implement user/group membership search using Apache Directory Ldap module instead of JLDAP
- Retrieve user's group membership if specified by username rather than DN
- New enum 'MemberAttributeType'
- New GuacamoleProperty 'MemberAttributeTypeProperty'
- New configuration property 'ldap-member-attribute-type'
    Specifies what the field specified by 'ldap-member-attribute' actually
    contains -- "dn" (default) or "uid" or ...
2019-10-23 11:10:20 +01:00
Virtually Nick
062edda07b GUACAMOLE-897: Merge add Docker support for restricting authentication to database users only 2019-10-22 10:34:20 -04:00
Stephen Cluff
1358eb002e GUACAMOLE-897: Docker support for restricting authentication to database users only 2019-10-21 21:11:01 -07:00
Michael Jumper
ff8fb55880 Merge 1.1.0 changes back to master. 2019-10-11 10:43:55 -07:00
Mike Jumper
51de21b745 GUACAOMLE-893: Merge fix for regression in LDAP filter generation. 2019-10-11 10:42:54 -07:00
Virtually Nick
a037146a87 GUACAMOLE-893: Fix issue where just checking for attribute presence. 2019-10-10 20:53:07 -04:00
Virtually Nick
32b106b982 GUACAMOLE-884: Merge Leverage createImageBitmap() for reading image data where supported 2019-10-09 15:52:09 -04:00
Virtually Nick
10b3adcd83 GUACAMOLE-893: Fix regression in LDAP causing null filter value to be sent. 2019-10-09 14:53:34 -04:00
Virtually Nick
344e6c1b46 GUACAMOLE-889: Fix mismatching attribute names 2019-10-04 13:33:57 -04:00
Inperpetuammemoriam
e1f4f8ab97 GUACAMOLE-889: Fix mismatching attribute names
This patch targets the following error message:

line 30 objectClass: AttributeType not found: "protocol"
2019-10-04 19:10:25 +02:00
Michael Jumper
1e9ddc2183 GUACAMOLE-884: Note that the drawImage() functions accept anything implementing the CanvasImageSource interface, not just Image. 2019-09-29 22:17:45 -07:00
Michael Jumper
6649c5d334 GUACAMOLE-884: Document implications of using drawStream() vs. the other drawing functions. 2019-09-29 22:13:19 -07:00
Michael Jumper
4e130d2afd GUACAMOLE-884: Leverage createImageBitmap() for reading image data where supported.
Some browsers suffer from a memory leak when reading image data
repeatedly using the Image object. Reading from Blobs does not exhibit
the same behavior. While reading from Blobs has previously been seen to
perform poorly compared to data URIs, this was observed when reading
using createObjectURL(). The createImageBitmap() function appears to
perform identically to reading data URIs using Image.
2019-09-29 21:57:05 -07:00
Virtually Nick
bad20e1a6c GUACAMOLE-817: Merge reset keyboard state on navigation and form submission. 2019-09-29 20:32:50 -04:00
Michael Jumper
a4a89e983a GUACAMOLE-817: Reset keyboard state on navigation and form submission.
Firefox, and perhaps other browsers, does not fire a keyup event for
keys involved in submitting a form. This results in the enter key being
stuck in a pressed state if it is used to submit Guacamole's login
form.

Keyboard state should be reset whenever keyboard state cannot be
reliably maintained. This is already done for loss of window focus, but
should also be done for form submission (this specific case) and
navigation to a different page (generic catch-all).
2019-09-29 12:32:29 -07:00
Michael Jumper
5ff81f7735 Merge 1.1.0 changes back to master.
Conflicts:

 * extensions/guacamole-auth-cas/src/main/resources/guac-manifest.json
 * extensions/guacamole-auth-duo/src/main/resources/guac-manifest.json
 * extensions/guacamole-auth-openid/src/main/resources/guac-manifest.json
 * extensions/guacamole-auth-quickconnect/src/main/resources/guac-manifest.json
 * extensions/guacamole-auth-radius/src/main/resources/guac-manifest.json
 * extensions/guacamole-auth-totp/src/main/resources/guac-manifest.json
 * guacamole/src/main/webapp/translations/de.json
2019-09-09 18:57:01 -07:00
Mike Jumper
981adc94e6 GUACAMOLE-699: Merge changes bringing German translations up-to-date. 2019-09-09 18:52:53 -07:00
Mike Jumper
7a68a78a89 GUACAMOLE-870: Merge changes using CHARINDEX() instead of POSITION() for SQL Server.
SQL Server does not support the ANSI SQL POSITION() function, instead providing its own non-standard equivalent: CHARINDEX().
2019-09-07 13:42:41 -07:00
Nick Couchman
e5b93feb1e GUACAMOLE-870: Replace POSITION with CHARINDEX for SQL Server. 2019-09-05 14:44:46 -04:00
Michael Jumper
a00baf6d89 Merge 1.1.0 changes back to master. 2019-09-01 15:07:38 -07:00
Mike Jumper
276f8d4f0f GUACAMOLE-234: Merge changes maintaining open LDAP connection following call to bindAs(). 2019-09-01 15:07:03 -07:00
Mike Jumper
a9e9f506c7 GUACAMOLE-514: Merge parameter definition and translations for VNC "username" field. 2019-08-27 11:52:18 -07:00
Nick Couchman
610ed6934e GUACAMOLE-234: Fix bind issue that occurs using try-with-resources. 2019-08-26 11:19:35 -04:00
Virtually Nick
9715ab12eb GUACAMOLE-514: Correct username field type and add translations. 2019-08-23 21:05:48 -04:00
Virtually Nick
e58101997f Merge 1.1.0 changes back to master. 2019-08-19 08:17:29 -04:00
Virtually Nick
7fd9bf49a5 GUACAMOLE-630: Merge use singleton instance of Pickr for all color input fields. 2019-08-19 08:16:22 -04:00
Mike Jumper
339c920a89 GUACAMOLE-684: Merge changes giving tentative acceptance of credentials priority over complete refusal.
As described in the discussion surrounding the original pull request:

 * An extension throws `GuacamoleInsufficientCredentialsException`
   specifically to indicate tentative acceptance of the credentials
   passed thus far.
 * Just as such an extension that fully accepts credentials takes
   priority over an extension that refuses to accept the same, it makes
   sense to allow an extension that *tentatively* accepts those credentials
   to also take priority.

With the above perspective, authentication result priorities are as
follows, with ties broken by the inherent order of the auth providers:

 1. Acceptance (returning an `AuthenticedUser` instance).
 2. Tentative acceptance (throwing
    `GuacamoleInvalidCredentialsException`).
 3. Complete refusal (any other subclass of
    `GuacamoleCredentialsException`).
 4. Neither refusal nor acceptance (returning `null`).

See: https://github.com/apache/guacamole-client/pull/352
2019-08-19 00:11:19 -07:00
Michael Jumper
93ba19ac26 GUACAMOLE-630: Create a new injector for field type instances only if needed.
Creating a new injector re-initializes services and providers within
its modules. If those services or providers rely on being singletons
(as colorPickerService does), this produces unexpected behavior.
2019-08-18 22:00:16 -07:00
Michael Jumper
83f1849215 GUACAMOLE-630: Migrate guacInputColor to singleton instance of Pickr. 2019-08-18 21:32:58 -07:00
leetxyz
5ac68c3f72 GUACAMOLE-699: Fix language ordering, add de.json to auth-jdbc-*, fix intendation 2019-08-15 18:09:30 +02:00
Mike Jumper
df8b8ab0e6 GUACAMOLE-769: Merge fix for regression in appearance of RADIUS challenge/response interface. 2019-08-13 12:15:30 -07:00
Virtually Nick
e86e415493 GUACAMOLE-769: Add back empty translation string. 2019-08-13 14:57:41 -04:00
Mike Jumper
c370d34524 GUACAMOLE-774: Merge correction for Java 9+ compatibility in RADIUS build. 2019-08-13 11:57:21 -07:00
Virtually Nick
95ec3c73ce GUACAMOLE-774: Different approach to loading MD4 support. 2019-08-13 14:11:38 -04:00