Imported Upstream version 4.4.2.8
Former-commit-id: 35c92f977d4776b96adf6e2e2f8ebbe9c6724ef4
This commit is contained in:
parent
0b4a830db1
commit
42e38034c4
@ -214,6 +214,9 @@ namespace System.Web.Services.Protocols {
|
||||
OutputMembersMapping = soapImporter.ImportMembersMapping (ResponseName, ResponseNamespace, out_members, hasWrappingElem, writeAccessors);
|
||||
}
|
||||
|
||||
InputMembersMapping.SetKey(RequestName);
|
||||
OutputMembersMapping.SetKey(ResponseName);
|
||||
|
||||
requestSerializerId = parent.RegisterSerializer (InputMembersMapping);
|
||||
responseSerializerId = parent.RegisterSerializer (OutputMembersMapping);
|
||||
|
||||
@ -254,6 +257,8 @@ namespace System.Web.Services.Protocols {
|
||||
else
|
||||
InputHeaderMembersMapping = soapImporter.ImportMembersMapping ("", RequestNamespace, members, false, false);
|
||||
|
||||
InputHeaderMembersMapping.SetKey(RequestName + ":InHeaders");
|
||||
|
||||
requestHeadersSerializerId = parent.RegisterSerializer (InputHeaderMembersMapping);
|
||||
}
|
||||
|
||||
@ -265,7 +270,9 @@ namespace System.Web.Services.Protocols {
|
||||
OutputHeaderMembersMapping = xmlImporter.ImportMembersMapping ("", RequestNamespace, members, false);
|
||||
else
|
||||
OutputHeaderMembersMapping = soapImporter.ImportMembersMapping ("", RequestNamespace, members, false, false);
|
||||
|
||||
|
||||
OutputHeaderMembersMapping.SetKey(ResponseName + ":OutHeaders");
|
||||
|
||||
responseHeadersSerializerId = parent.RegisterSerializer (OutputHeaderMembersMapping);
|
||||
}
|
||||
|
||||
|
@ -243,5 +243,44 @@ namespace MonoTests.System.Web.Services.Protocols
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class RequestHeader : SoapHeader
|
||||
{
|
||||
}
|
||||
|
||||
public class ResponseHeader : SoapHeader
|
||||
{
|
||||
}
|
||||
|
||||
[WebServiceBindingAttribute(Name = "ServiceWithHeaders", Namespace = "https://example.com")]
|
||||
public class ServiceWithHeaders : SoapHttpClientProtocol
|
||||
{
|
||||
public RequestHeader RequestHeader { get; set; }
|
||||
public ResponseHeader ResponseHeader { get; set; }
|
||||
|
||||
[SoapHeaderAttribute("ResponseHeader", Direction = SoapHeaderDirection.Out)]
|
||||
[SoapHeaderAttribute("RequestHeader")]
|
||||
[SoapDocumentMethodAttribute("", RequestNamespace = "https://example.com", ResponseNamespace = "https://example.com", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
|
||||
public int method1()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
[SoapHeaderAttribute("ResponseHeader", Direction = SoapHeaderDirection.Out)]
|
||||
[SoapHeaderAttribute("RequestHeader")]
|
||||
[SoapDocumentMethodAttribute("", RequestNamespace = "https://example.com", ResponseNamespace = "https://example.com", Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
|
||||
public int method2()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
[Test] // Covers #41564
|
||||
public void ServiceWithHeader () {
|
||||
var service = new ServiceWithHeaders ();
|
||||
Assert.IsNotNull (service);
|
||||
// Should not throw an exception
|
||||
// XAMMAC specific bug
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -144,13 +144,25 @@ namespace Mono.Net.Security
|
||||
bool result;
|
||||
|
||||
#if MONODROID
|
||||
result = AndroidPlatform.TrustEvaluateSsl (certs);
|
||||
if (result) {
|
||||
// chain.Build() + GetErrorsFromChain() (above) will ALWAYS fail on
|
||||
// Android (there are no mozroots or preinstalled root certificates),
|
||||
// thus `errors` will ALWAYS have RemoteCertificateChainErrors.
|
||||
// Android just verified the chain; clear RemoteCertificateChainErrors.
|
||||
errors &= ~SslPolicyErrors.RemoteCertificateChainErrors;
|
||||
try {
|
||||
result = AndroidPlatform.TrustEvaluateSsl (certs);
|
||||
if (result) {
|
||||
// FIXME: check whether this is still correct.
|
||||
//
|
||||
// chain.Build() + GetErrorsFromChain() (above) will ALWAYS fail on
|
||||
// Android (there are no mozroots or preinstalled root certificates),
|
||||
// thus `errors` will ALWAYS have RemoteCertificateChainErrors.
|
||||
// Android just verified the chain; clear RemoteCertificateChainErrors.
|
||||
errors &= ~SslPolicyErrors.RemoteCertificateChainErrors;
|
||||
} else {
|
||||
errors |= SslPolicyErrors.RemoteCertificateChainErrors;
|
||||
status11 = unchecked((int)0x800B010B);
|
||||
}
|
||||
} catch {
|
||||
result = false;
|
||||
errors |= SslPolicyErrors.RemoteCertificateChainErrors;
|
||||
status11 = unchecked((int)0x800B010B);
|
||||
// Ignore
|
||||
}
|
||||
#else
|
||||
if (is_macosx) {
|
||||
|
@ -89,7 +89,7 @@ guint32 WaitForSingleObjectEx(gpointer handle, guint32 timeout,
|
||||
int thr_ret;
|
||||
gboolean apc_pending = FALSE;
|
||||
gpointer current_thread = wapi_get_current_thread_handle ();
|
||||
gint64 now, end;
|
||||
gint64 wait_start, timeout_in_ticks;
|
||||
|
||||
if (current_thread == NULL) {
|
||||
SetLastError (ERROR_INVALID_HANDLE);
|
||||
@ -159,8 +159,10 @@ guint32 WaitForSingleObjectEx(gpointer handle, guint32 timeout,
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (timeout != INFINITE)
|
||||
end = mono_100ns_ticks () + timeout * 1000 * 10;
|
||||
if (timeout != INFINITE) {
|
||||
wait_start = mono_100ns_ticks ();
|
||||
timeout_in_ticks = (gint64)timeout * 10 * 1000; //can't overflow as timeout is 32bits
|
||||
}
|
||||
|
||||
do {
|
||||
/* Check before waiting on the condition, just in case
|
||||
@ -178,13 +180,13 @@ guint32 WaitForSingleObjectEx(gpointer handle, guint32 timeout,
|
||||
if (timeout == INFINITE) {
|
||||
waited = _wapi_handle_timedwait_signal_handle (handle, INFINITE, alertable, FALSE, &apc_pending);
|
||||
} else {
|
||||
now = mono_100ns_ticks ();
|
||||
if (end < now) {
|
||||
gint64 elapsed = mono_100ns_ticks () - wait_start;
|
||||
if (elapsed >= timeout_in_ticks) {
|
||||
ret = WAIT_TIMEOUT;
|
||||
goto done;
|
||||
}
|
||||
|
||||
waited = _wapi_handle_timedwait_signal_handle (handle, (end - now) / 10 / 1000, alertable, FALSE, &apc_pending);
|
||||
waited = _wapi_handle_timedwait_signal_handle (handle, (timeout_in_ticks - elapsed) / 10 / 1000, alertable, FALSE, &apc_pending);
|
||||
}
|
||||
|
||||
if(waited==0 && !apc_pending) {
|
||||
@ -268,7 +270,7 @@ guint32 SignalObjectAndWait(gpointer signal_handle, gpointer wait,
|
||||
int thr_ret;
|
||||
gboolean apc_pending = FALSE;
|
||||
gpointer current_thread = wapi_get_current_thread_handle ();
|
||||
gint64 now, end;
|
||||
gint64 wait_start, timeout_in_ticks;
|
||||
|
||||
if (current_thread == NULL) {
|
||||
SetLastError (ERROR_INVALID_HANDLE);
|
||||
@ -343,9 +345,10 @@ guint32 SignalObjectAndWait(gpointer signal_handle, gpointer wait,
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (timeout != INFINITE)
|
||||
end = mono_100ns_ticks () + timeout * 1000 * 10;
|
||||
|
||||
if (timeout != INFINITE) {
|
||||
wait_start = mono_100ns_ticks ();
|
||||
timeout_in_ticks = (gint64)timeout * 10 * 1000; //can't overflow as timeout is 32bits
|
||||
}
|
||||
do {
|
||||
/* Check before waiting on the condition, just in case
|
||||
*/
|
||||
@ -361,13 +364,13 @@ guint32 SignalObjectAndWait(gpointer signal_handle, gpointer wait,
|
||||
if (timeout == INFINITE) {
|
||||
waited = _wapi_handle_timedwait_signal_handle (wait, INFINITE, alertable, FALSE, &apc_pending);
|
||||
} else {
|
||||
now = mono_100ns_ticks ();
|
||||
if (end < now) {
|
||||
gint64 elapsed = mono_100ns_ticks () - wait_start;
|
||||
if (elapsed >= timeout_in_ticks) {
|
||||
ret = WAIT_TIMEOUT;
|
||||
goto done;
|
||||
}
|
||||
|
||||
waited = _wapi_handle_timedwait_signal_handle (wait, (end - now) / 10 / 1000, alertable, FALSE, &apc_pending);
|
||||
waited = _wapi_handle_timedwait_signal_handle (wait, (timeout_in_ticks - elapsed) / 10 / 1000, alertable, FALSE, &apc_pending);
|
||||
}
|
||||
|
||||
if (waited==0 && !apc_pending) {
|
||||
@ -474,7 +477,7 @@ guint32 WaitForMultipleObjectsEx(guint32 numobjects, gpointer *handles,
|
||||
gboolean poll;
|
||||
gpointer sorted_handles [MAXIMUM_WAIT_OBJECTS];
|
||||
gboolean apc_pending = FALSE;
|
||||
gint64 now, end;
|
||||
gint64 wait_start, timeout_in_ticks;
|
||||
|
||||
if (current_thread == NULL) {
|
||||
SetLastError (ERROR_INVALID_HANDLE);
|
||||
@ -559,8 +562,10 @@ guint32 WaitForMultipleObjectsEx(guint32 numobjects, gpointer *handles,
|
||||
return WAIT_TIMEOUT;
|
||||
}
|
||||
|
||||
if (timeout != INFINITE)
|
||||
end = mono_100ns_ticks () + timeout * 1000 * 10;
|
||||
if (timeout != INFINITE) {
|
||||
wait_start = mono_100ns_ticks ();
|
||||
timeout_in_ticks = (gint64)timeout * 10 * 1000; //can't overflow as timeout is 32bits
|
||||
}
|
||||
|
||||
/* Have to wait for some or all handles to become signalled
|
||||
*/
|
||||
@ -608,11 +613,11 @@ guint32 WaitForMultipleObjectsEx(guint32 numobjects, gpointer *handles,
|
||||
if (timeout == INFINITE) {
|
||||
ret = _wapi_handle_timedwait_signal (INFINITE, poll, &apc_pending);
|
||||
} else {
|
||||
now = mono_100ns_ticks ();
|
||||
if (end < now) {
|
||||
gint64 elapsed = mono_100ns_ticks () - wait_start;
|
||||
if (elapsed >= timeout_in_ticks) {
|
||||
ret = WAIT_TIMEOUT;
|
||||
} else {
|
||||
ret = _wapi_handle_timedwait_signal ((end - now) / 10 / 1000, poll, &apc_pending);
|
||||
ret = _wapi_handle_timedwait_signal ((timeout_in_ticks - elapsed) / 10 / 1000, poll, &apc_pending);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -801,7 +801,7 @@ EXTRA_DIST = TestDriver.cs \
|
||||
Makefile.am.in
|
||||
|
||||
version.h: Makefile
|
||||
echo "#define FULL_VERSION \"Nightly 4.4.2.4/4dff7a3\"" > version.h
|
||||
echo "#define FULL_VERSION \"Stable 4.4.2.8/b430435\"" > version.h
|
||||
|
||||
# Utility target for patching libtool to speed up linking
|
||||
patch-libtool:
|
||||
|
@ -801,7 +801,7 @@ EXTRA_DIST = TestDriver.cs \
|
||||
Makefile.am.in
|
||||
|
||||
version.h: Makefile
|
||||
echo "#define FULL_VERSION \"Nightly 4.4.2.4/4dff7a3\"" > version.h
|
||||
echo "#define FULL_VERSION \"Stable 4.4.2.8/b430435\"" > version.h
|
||||
|
||||
# Utility target for patching libtool to speed up linking
|
||||
patch-libtool:
|
||||
|
@ -1 +1 @@
|
||||
026e3b4ea999d7bf6b28320aa51d9dfccee24179
|
||||
3aaf7c80ccd98cebb57a8ccc2edaae35be2685c6
|
@ -1 +1 @@
|
||||
#define FULL_VERSION "Nightly 4.4.2.4/4dff7a3"
|
||||
#define FULL_VERSION "Stable 4.4.2.8/b430435"
|
||||
|
BIN
po/mcs/de.gmo
BIN
po/mcs/de.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
1e8721cd56ca4ab61e143982f5a26c5deb981732
|
||||
3e14d187d24477dad777bf70d778c896db832389
|
BIN
po/mcs/es.gmo
BIN
po/mcs/es.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
51f46f2136a469cb0ef8ada33d8439a30d131f7c
|
||||
62e818c3e7d3b5082ebb570a97196f5b21c15dbe
|
BIN
po/mcs/ja.gmo
BIN
po/mcs/ja.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
dc833096d7204066e3addd02926888ae951986bb
|
||||
5e6566da5c9c4636f01b19f26738b878c60c9722
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: mono 4.4.2\n"
|
||||
"Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
|
||||
"POT-Creation-Date: 2016-07-21 09:21+0000\n"
|
||||
"POT-Creation-Date: 2016-07-26 08:41+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
BIN
po/mcs/pt_BR.gmo
BIN
po/mcs/pt_BR.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
dcfb9de0809f3e8dd9dc4177cd980eceb04d8156
|
||||
8b8c1f7baa12d244f43716e816c8a3a30101007f
|
Loading…
x
Reference in New Issue
Block a user