import openwsman-2.6.8-23.el9
This commit is contained in:
parent
24def8695d
commit
f1cfa770d7
56
SOURCES/openwsman-2.6.8-http-unauthorized-improve.patch
Normal file
56
SOURCES/openwsman-2.6.8-http-unauthorized-improve.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
diff -up openwsman-2.6.8/src/lib/wsman-curl-client-transport.c.orig openwsman-2.6.8/src/lib/wsman-curl-client-transport.c
|
||||||
|
--- openwsman-2.6.8/src/lib/wsman-curl-client-transport.c.orig 2022-11-24 10:02:08.114053046 +0100
|
||||||
|
+++ openwsman-2.6.8/src/lib/wsman-curl-client-transport.c 2022-11-24 10:02:08.119053046 +0100
|
||||||
|
@@ -455,6 +455,7 @@ wsmc_handler( WsManClient *cl,
|
||||||
|
long http_code;
|
||||||
|
long auth_avail = 0;
|
||||||
|
char *_user = NULL, *_pass = NULL;
|
||||||
|
+ int _no_auth = 0; /* 0 if authentication is used, 1 if no authentication was used */
|
||||||
|
u_buf_t *response = NULL;
|
||||||
|
//char *soapaction;
|
||||||
|
char *tmp_str = NULL;
|
||||||
|
@@ -554,6 +555,7 @@ wsmc_handler( WsManClient *cl,
|
||||||
|
_user = wsmc_get_user(cl);
|
||||||
|
_pass = wsmc_get_password(cl);
|
||||||
|
if (_user && _pass && cl->data.auth_set) {
|
||||||
|
+ _no_auth = 0;
|
||||||
|
r = curl_easy_setopt(curl, CURLOPT_HTTPAUTH, cl->data.auth_set);
|
||||||
|
if (r != CURLE_OK) {
|
||||||
|
cl->fault_string = u_strdup(curl_easy_strerror(r));
|
||||||
|
@@ -574,6 +576,11 @@ wsmc_handler( WsManClient *cl,
|
||||||
|
curl_err("curl_easy_setopt(curl, CURLOPT_USERPWD, ..) failed");
|
||||||
|
goto DONE;
|
||||||
|
}
|
||||||
|
+ } else {
|
||||||
|
+ /* request without user credentials, remember this for
|
||||||
|
+ * later use when it might become necessary to print an error message
|
||||||
|
+ */
|
||||||
|
+ _no_auth = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (wsman_debug_level_debugged(DEBUG_LEVEL_MESSAGE)) {
|
||||||
|
@@ -606,6 +613,24 @@ wsmc_handler( WsManClient *cl,
|
||||||
|
break;
|
||||||
|
case 401:
|
||||||
|
// The server requires authentication.
|
||||||
|
+ /* RFC 2616 states:
|
||||||
|
+ *
|
||||||
|
+ * If the request already included Authorization credentials, then the 401
|
||||||
|
+ * response indicates that authorization has been refused for those
|
||||||
|
+ * credentials. If the 401 response contains the same challenge as the
|
||||||
|
+ * prior response, and the user agent has already attempted
|
||||||
|
+ * authentication at least once, then the user SHOULD be presented the
|
||||||
|
+ * entity that was given in the response, since that entity might
|
||||||
|
+ * include relevant diagnostic information.
|
||||||
|
+ */
|
||||||
|
+ if (_no_auth == 0) {
|
||||||
|
+ /* no authentication credentials were used. It is only
|
||||||
|
+ * possible to write a message about the current situation. There
|
||||||
|
+ * is no information about the last attempt to access the resource.
|
||||||
|
+ * Maybe at a later point in time I will implement more state information.
|
||||||
|
+ */
|
||||||
|
+ fprintf(stdout,"Authentication failed, please retry\n");
|
||||||
|
+ }
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// The status code does not indicate success.
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
Name: openwsman
|
Name: openwsman
|
||||||
Version: 2.6.8
|
Version: 2.6.8
|
||||||
Release: 22%{?dist}
|
Release: 23%{?dist}
|
||||||
Summary: Open source Implementation of WS-Management
|
Summary: Open source Implementation of WS-Management
|
||||||
|
|
||||||
License: BSD
|
License: BSD
|
||||||
@ -23,6 +23,7 @@ Patch5: openwsman-2.6.5-libcurl-error-codes-update.patch
|
|||||||
Patch6: openwsman-2.6.8-CVE-2019-3816.patch
|
Patch6: openwsman-2.6.8-CVE-2019-3816.patch
|
||||||
Patch7: openwsman-2.6.8-CVE-2019-3833.patch
|
Patch7: openwsman-2.6.8-CVE-2019-3833.patch
|
||||||
Patch8: openwsman-2.6.8-update-ssleay-conf.patch
|
Patch8: openwsman-2.6.8-update-ssleay-conf.patch
|
||||||
|
Patch9: openwsman-2.6.8-http-unauthorized-improve.patch
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
BuildRequires: swig
|
BuildRequires: swig
|
||||||
BuildRequires: libcurl-devel libxml2-devel pam-devel sblim-sfcc-devel
|
BuildRequires: libcurl-devel libxml2-devel pam-devel sblim-sfcc-devel
|
||||||
@ -135,6 +136,7 @@ You can use it to send shell commands to a remote Windows hosts.
|
|||||||
%patch6 -p1 -b .CVE-2019-3816
|
%patch6 -p1 -b .CVE-2019-3816
|
||||||
%patch7 -p1 -b .CVE-2019-3833
|
%patch7 -p1 -b .CVE-2019-3833
|
||||||
%patch8 -p1 -b .update-ssleay-conf
|
%patch8 -p1 -b .update-ssleay-conf
|
||||||
|
%patch9 -p1 -b .http-unauthorized-improve
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# Removing executable permissions on .c and .h files to fix rpmlint warnings.
|
# Removing executable permissions on .c and .h files to fix rpmlint warnings.
|
||||||
@ -288,6 +290,10 @@ rm -f /var/log/wsmand.log
|
|||||||
%{_bindir}/winrs
|
%{_bindir}/winrs
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Nov 24 2022 Vitezslav Crhonek <vcrhonek@redhat.com> - 2.6.8-23
|
||||||
|
- Improve handling of HTTP 401 Unauthorized
|
||||||
|
Resolves: #2127415
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.6.8-22
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.6.8-22
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
Related: rhbz#1991688
|
Related: rhbz#1991688
|
||||||
|
Loading…
Reference in New Issue
Block a user