Repository navigation
v1.0.0
The v1 API freeze: from v1.0.0 no exported identifier of ipa or ipatest
is removed or re-signed (see Stability in the README). This release marks
what newer identifiers supersede, fixes the last client-side bugs found in
the API review and makes ipatest follow FreeIPA more closely.
Deprecated
NewDefaultClient,NewDefaultClientWithSession,NewClientand
NewClientCustomHttp(useNew),DefaultTOTPToken(useAddOTPToken
with nil),ParseDateTime(useEntry.Time) andResponse.Error. All
keep working.
Added
ipatest: gettersHBACRule,SudoRule,PwPolicy,Role,Privilege
andPermission, andService.AuthIndicators
Changed
- Wire-equivalent shape changes, visible in
ipatest.Calls():
hbacrule_delanddnszone_delsendcontinue: false;
hostgroup_findandotptoken_findwith no criteria send[""]as the
argument Entry.Strsreturns a lone hint object other than__dns_name__as its
JSON instead of its inner value, as it already did inside a list- A 401 from
SetPasswordandSyncOTPTokennow also matches
ErrUnauthorized; failures ofRemoteLogin,SetPasswordand
SyncOTPTokenmatch*HTTPErrorwitherrors.As, message text unchanged - With
WithValidation, an option key that names a positional argument newer
than the server givesErrNotSupported ipatestbehaviour (see Q140 to Q155 in the package documentation):
host_deldeletes the host's services; host group cycles are accepted;
service_modandkrbprincipalauthind;sudoordermust be unique and
sudo rules reject member lists that conflict with a category;hbactest
expands the default HBAC service groups; RBACcnfinds match the whole
name;otptoken_delby a non-admin gives 2100; certificate principals are
case-sensitive and a second revoke fails; DNS apex and name checks;
session_logoutdoes not end the session, as on real servers (Q155), and
a missing session gets FreeIPA's HTML 401 page
Fixed
- A goroutine waiting for another's password re-login returns
ctx.Err()
when its context ends instead of blocking ClearSessionduring a re-login is no longer undone by the login that was
already in flight- Command catalogue generator:
autofillis read only as a keyword argument,
a stale allow-list entry and two source files for one version are errors
Security
- On FreeIPA (seen on 4.9.13, 4.12.2 and 4.13.4) the server keeps accepting a session cookie after
session_logout. Logout only makes the client forget it, so treat a
session ID as a credential until it expires. Documented in the README and
the package documentation.