import openwsman-2.6.8-23.el9
This commit is contained in:
		
							parent
							
								
									70685e1308
								
							
						
					
					
						commit
						726fe6d019
					
				
							
								
								
									
										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