Signed-off-by: Hans Leidekker <hans(a)codeweavers.com>
---
dlls/webservices/channel.c | 7 ++-----
dlls/webservices/listener.c | 3 +--
dlls/webservices/msg.c | 25 +++++++---------------
dlls/webservices/url.c | 41 +++++++++++++++----------------------
4 files changed, 27 insertions(+), 49 deletions(-)
diff --git a/dlls/webservices/channel.c b/dlls/webservices/channel.c
index 10c33dc07d..f2906c8673 100644
--- a/dlls/webservices/channel.c
+++ b/dlls/webservices/channel.c
@@ -910,8 +910,6 @@ error:
static HRESULT connect_channel_http( struct channel *channel )
{
- static const WCHAR agentW[] =
- {'M','S','-','W','e','b','S','e','r','v','i','c','e','s','/','1','.','0',0};
HINTERNET ses = NULL, con = NULL;
URL_COMPONENTS uc;
HRESULT hr;
@@ -943,7 +941,7 @@ static HRESULT connect_channel_http( struct channel *channel )
goto done;
}
- if (!(ses = WinHttpOpen( agentW, 0, NULL, NULL, 0 )))
+ if (!(ses = WinHttpOpen( L"MS-WebServices/1.0", 0, NULL, NULL, 0 )))
{
hr = HRESULT_FROM_WIN32( GetLastError() );
goto done;
@@ -1267,8 +1265,7 @@ static HRESULT send_sized_envelope( struct channel *channel, BYTE *data, ULONG l
static HRESULT open_http_request( struct channel *channel, HINTERNET *req )
{
- static const WCHAR postW[] = {'P','O','S','T',0};
- if ((*req = WinHttpOpenRequest( channel->u.http.connect, postW, channel->u.http.path,
+ if ((*req = WinHttpOpenRequest( channel->u.http.connect, L"POST", channel->u.http.path,
NULL, NULL, NULL, channel->u.http.flags ))) return S_OK;
return HRESULT_FROM_WIN32( GetLastError() );
}
diff --git a/dlls/webservices/listener.c b/dlls/webservices/listener.c
index 9b32369fd4..d41b64b974 100644
--- a/dlls/webservices/listener.c
+++ b/dlls/webservices/listener.c
@@ -286,7 +286,6 @@ void WINAPI WsFreeListener( WS_LISTENER *handle )
HRESULT resolve_hostname( const WCHAR *host, USHORT port, struct sockaddr *addr, int *addr_len, int flags )
{
- static const WCHAR fmtW[] = {'%','u',0};
WCHAR service[6];
ADDRINFOW hints, *res, *info;
HRESULT hr = WS_E_ADDRESS_NOT_AVAILABLE;
@@ -296,7 +295,7 @@ HRESULT resolve_hostname( const WCHAR *host, USHORT port, struct sockaddr *addr,
hints.ai_family = AF_INET;
*addr_len = 0;
- swprintf( service, ARRAY_SIZE(service), fmtW, port );
+ swprintf( service, ARRAY_SIZE(service), L"%u", port );
if (GetAddrInfoW( host, service, &hints, &res )) return HRESULT_FROM_WIN32( WSAGetLastError() );
info = res;
diff --git a/dlls/webservices/msg.c b/dlls/webservices/msg.c
index 6922224a05..d955e173b4 100644
--- a/dlls/webservices/msg.c
+++ b/dlls/webservices/msg.c
@@ -1901,14 +1901,6 @@ static HRESULT insert_mapped_headers( struct msg *msg, HINTERNET req )
HRESULT message_insert_http_headers( WS_MESSAGE *handle, HINTERNET req )
{
- static const WCHAR contenttypeW[] =
- {'C','o','n','t','e','n','t','-','T','y','p','e',0};
- static const WCHAR soapxmlW[] =
- {'a','p','p','l','i','c','a','t','i','o','n','/','s','o','a','p','+','x','m','l',0};
- static const WCHAR textxmlW[] =
- {'t','e','x','t','/','x','m','l',0};
- static const WCHAR charsetW[] =
- {'c','h','a','r','s','e','t','=','u','t','f','-','8',0};
struct msg *msg = (struct msg *)handle;
HRESULT hr = E_OUTOFMEMORY;
WCHAR *header = NULL, *buf;
@@ -1925,11 +1917,11 @@ HRESULT message_insert_http_headers( WS_MESSAGE *handle, HINTERNET req )
switch (msg->version_env)
{
case WS_ENVELOPE_VERSION_SOAP_1_1:
- header = build_http_header( contenttypeW, textxmlW, &len );
+ header = build_http_header( L"Content-Type", L"text/xml", &len );
break;
case WS_ENVELOPE_VERSION_SOAP_1_2:
- header = build_http_header( contenttypeW, soapxmlW, &len );
+ header = build_http_header( L"Content-Type", L"application/soap+xml", &len );
break;
default:
@@ -1942,7 +1934,7 @@ HRESULT message_insert_http_headers( WS_MESSAGE *handle, HINTERNET req )
heap_free( header );
hr = E_OUTOFMEMORY;
- if (!(header = build_http_header( contenttypeW, charsetW, &len ))) goto done;
+ if (!(header = build_http_header( L"Content-Type", L"charset=utf-8", &len ))) goto done;
if ((hr = insert_http_header( req, header, len, WINHTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON )) != S_OK)
goto done;
heap_free( header );
@@ -1952,8 +1944,6 @@ HRESULT message_insert_http_headers( WS_MESSAGE *handle, HINTERNET req )
{
case WS_ENVELOPE_VERSION_SOAP_1_1:
{
- static const WCHAR soapactionW[] = {'S','O','A','P','A','c','t','i','o','n',0};
-
if (!(len = MultiByteToWideChar( CP_UTF8, 0, (char *)msg->action->bytes, msg->action->length, NULL, 0 )))
break;
@@ -1964,7 +1954,7 @@ HRESULT message_insert_http_headers( WS_MESSAGE *handle, HINTERNET req )
buf[len + 1] = '"';
buf[len + 2] = 0;
- header = build_http_header( soapactionW, buf, &len );
+ header = build_http_header( L"SOAPAction", buf, &len );
heap_free( buf );
if (!header) goto done;
@@ -1973,21 +1963,20 @@ HRESULT message_insert_http_headers( WS_MESSAGE *handle, HINTERNET req )
}
case WS_ENVELOPE_VERSION_SOAP_1_2:
{
- static const WCHAR actionW[] = {'a','c','t','i','o','n','=','"'};
- ULONG len_action = ARRAY_SIZE( actionW );
+ ULONG len_action = ARRAY_SIZE( L"action=\"" ) - 1;
if (!(len = MultiByteToWideChar( CP_UTF8, 0, (char *)msg->action->bytes, msg->action->length, NULL, 0 )))
break;
hr = E_OUTOFMEMORY;
if (!(buf = heap_alloc( (len + len_action + 2) * sizeof(WCHAR) ))) goto done;
- memcpy( buf, actionW, len_action * sizeof(WCHAR) );
+ memcpy( buf, L"action=\"", len_action * sizeof(WCHAR) );
MultiByteToWideChar( CP_UTF8, 0, (char *)msg->action->bytes, msg->action->length, buf + len_action, len );
len += len_action;
buf[len++] = '"';
buf[len] = 0;
- header = build_http_header( contenttypeW, buf, &len );
+ header = build_http_header( L"Content-Type", buf, &len );
heap_free( buf );
if (!header) goto done;
diff --git a/dlls/webservices/url.c b/dlls/webservices/url.c
index 6f2ce9d6c9..f2fbda83c1 100644
--- a/dlls/webservices/url.c
+++ b/dlls/webservices/url.c
@@ -31,27 +31,21 @@
WINE_DEFAULT_DEBUG_CHANNEL(webservices);
-static const WCHAR http[] = {'h','t','t','p'};
-static const WCHAR https[] = {'h','t','t','p','s'};
-static const WCHAR nettcp[] = {'n','e','t','.','t','c','p'};
-static const WCHAR soapudp[] = {'s','o','a','p','.','u','d','p'};
-static const WCHAR netpipe[] = {'n','e','t','.','p','i','p','e'};
-
static WS_URL_SCHEME_TYPE scheme_type( const WCHAR *str, ULONG len )
{
- if (len == ARRAY_SIZE( http ) && !wcsnicmp( str, http, ARRAY_SIZE( http )))
+ if (len == ARRAY_SIZE( L"http" ) - 1 && !wcsnicmp( str, L"http", ARRAY_SIZE( L"http" ) - 1 ))
return WS_URL_HTTP_SCHEME_TYPE;
- if (len == ARRAY_SIZE( https ) && !wcsnicmp( str, https, ARRAY_SIZE( https )))
+ if (len == ARRAY_SIZE( L"https" ) - 1 && !wcsnicmp( str, L"https", ARRAY_SIZE( L"https" ) - 1 ))
return WS_URL_HTTPS_SCHEME_TYPE;
- if (len == ARRAY_SIZE( nettcp ) && !wcsnicmp( str, nettcp, ARRAY_SIZE( nettcp )))
+ if (len == ARRAY_SIZE( L"net.tcp" ) - 1 && !wcsnicmp( str, L"net.tcp", ARRAY_SIZE( L"net.tcp" ) - 1 ))
return WS_URL_NETTCP_SCHEME_TYPE;
- if (len == ARRAY_SIZE( soapudp ) && !wcsnicmp( str, soapudp, ARRAY_SIZE( soapudp )))
+ if (len == ARRAY_SIZE( L"soap.udp" ) - 1 && !wcsnicmp( str, L"soap.udp", ARRAY_SIZE( L"soap.udp" ) - 1 ))
return WS_URL_SOAPUDP_SCHEME_TYPE;
- if (len == ARRAY_SIZE( netpipe ) && !wcsnicmp( str, netpipe, ARRAY_SIZE( netpipe )))
+ if (len == ARRAY_SIZE( L"net.pipe" ) - 1 && !wcsnicmp( str, L"net.pipe", ARRAY_SIZE( L"net.pipe" ) - 1 ))
return WS_URL_NETPIPE_SCHEME_TYPE;
return ~0u;
@@ -278,24 +272,24 @@ static const WCHAR *scheme_str( WS_URL_SCHEME_TYPE scheme, ULONG *len )
switch (scheme)
{
case WS_URL_HTTP_SCHEME_TYPE:
- *len = ARRAY_SIZE( http );
- return http;
+ *len = ARRAY_SIZE( L"http" ) - 1;
+ return L"http";
case WS_URL_HTTPS_SCHEME_TYPE:
- *len = ARRAY_SIZE( https );
- return https;
+ *len = ARRAY_SIZE( L"https" ) - 1;
+ return L"https";
case WS_URL_NETTCP_SCHEME_TYPE:
- *len = ARRAY_SIZE( nettcp );
- return nettcp;
+ *len = ARRAY_SIZE( L"net.tcp" ) - 1;
+ return L"net.tcp";
case WS_URL_SOAPUDP_SCHEME_TYPE:
- *len = ARRAY_SIZE( soapudp );
- return soapudp;
+ *len = ARRAY_SIZE( L"soap.udp" ) - 1;
+ return L"soap.udp";
case WS_URL_NETPIPE_SCHEME_TYPE:
- *len = ARRAY_SIZE( netpipe );
- return netpipe;
+ *len = ARRAY_SIZE( L"net.pipe" ) - 1;
+ return L"net.pipe";
default:
ERR( "unhandled scheme %u\n", scheme );
@@ -364,7 +358,7 @@ static HRESULT url_encode_size( const WCHAR *str, ULONG len, const char *except,
static ULONG url_encode_byte( unsigned char byte, const char *except, WCHAR *buf )
{
- static const WCHAR hex[] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
+ static const WCHAR hex[] = L"0123456789ABCDEF";
switch (escape_size( byte, except ))
{
case 3:
@@ -426,7 +420,6 @@ static HRESULT url_encode( const WCHAR *str, ULONG len, WCHAR *buf, const char *
HRESULT WINAPI WsEncodeUrl( const WS_URL *base, ULONG flags, WS_HEAP *heap, WS_STRING *ret,
WS_ERROR *error )
{
- static const WCHAR fmtW[] = {':','%','u',0};
ULONG len = 0, len_scheme, len_enc, ret_size = 0;
const WS_HTTP_URL *url = (const WS_HTTP_URL *)base;
const WCHAR *scheme;
@@ -504,7 +497,7 @@ HRESULT WINAPI WsEncodeUrl( const WS_URL *base, ULONG flags, WS_HEAP *heap, WS_S
if (port)
{
WCHAR buf[7];
- len = swprintf( buf, ARRAY_SIZE(buf), fmtW, port );
+ len = swprintf( buf, ARRAY_SIZE(buf), L":%u", port );
memcpy( p, buf, len * sizeof(WCHAR) );
p += len;
}
--
2.20.1