Example scenario using Microsoft Network Monitor:
1. SIM uses the "Expect: 100-continue" command. Frame 486.
2. After that the Proxy server causes an exception:
Frame: Number = 487, Captured Frame Length = 415, MediaType = ETHERNET
+ Ethernet: Etype = Internet IP (IPv4),DestinationAddress:[00-00-00-00-00-00],SourceAddress:[00-00-00-00-00-00]
+ Ipv4: Src = 192.0.2.10, Dest = 192.0.2.20, Next Protocol = TCP, Packet ID = 39972, Total IP Length = 401
- Tcp: Flags=...AP..., SrcPort=HTTP Alternate(8080), DstPort=2205, PayloadLen=361, Seq=2532664687 - 2532665048, Ack=2359623393, Win=65535 (scale factor 0x0) = 65535
SrcPort: HTTP Alternate(8080)
DstPort: 2205
SequenceNumber: 2532664687 (0x96F5656F)
AcknowledgementNumber: 2359623393 (0x8CA4FEE1)
- DataOffset: 80 (0x50)
DataOffset: (0101....) 20 bytes
Reserved: (....000.)
NS: (.......0) Nonce Sum not significant
- Flags: ...AP...
CWR: (0.......) CWR not significant
ECE: (.0......) ECN-Echo not significant
Urgent: (..0.....) Not Urgent Data
Ack: (...1....) Acknowledgement field significant
Push: (....1...) Push Function
Reset: (.....0..) No Reset
Syn: (......0.) Not Synchronize sequence numbers
Fin: (.......0) Not End of data
Window: 65535 (scale factor 0x0) = 65535
Checksum: 0x192, Good
UrgentPointer: 0 (0x0)
- Http: Response, HTTP/1.0, Status Code = 417, URL: http://<FQDN>/eval_license_broker/get_licenses.asmx
ProtocolVersion: HTTP/1.0
StatusCode: 417, Expectation Failed
Reason: Expectation failed
Server: squid/2.7.STABLE6
Date: Fri, 17 Jul 2009 07:22:38 GMT
- ContentType: text/html
MediaType: text/html
ContentLength: 1542
X-Squid-Error: ERR_INVALID_REQ 0
X-Cache: MISS from <FQDN>
X-Cache-Lookup: NONE from <proxy>.<domain>.com:8080
Via: 1.0 <proxy>.<domain>.com:8080 (squid/2.7.STABLE6)
Connection: close
HeaderEnd: CRLF
3. Squid Proxy needs to be configured to accept Expect100 commands.
See the below Squid Proxy documentation on Expect100Continue commands:
http://www.squid-cache.org/Doc/config/ignore_expect_100/
Priority: 1
Tick Count: 912125
Host Name: *********
Process: SYMANT~1 (3664)
Thread ID: 15
Module: SYMANT~1.EXE
Source: Symantec.Installation.EvaluationBrokerProxy.IsAlive
Description: Could not contact Licensing Server at Url 'http://<FQDN>/eval_license_broker/get_licenses.asmx'
( Exception Details: System.Net.WebException: The request failed with HTTP status 417: Expectation failed.
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Symantec.Installation.EvaluationBroker.Service.get_licenses_by_sku2(String s_key, String s_sku, Int32 i_license_term, String s_customer_email, String s_company_name, String s_customer_first_name, String s_customer_last_name, String s_customer_country_code, String s_customer_state_province, String s_customer_city, String s_customer_postal_code, String s_customer_address_1, String s_customer_address_2, String s_customer_phone, String[] s_urls)
at Symantec.Installation.EvaluationBrokerProxy.IsAlive() )
( Exception logged from:
at Altiris.Diagnostics.Logging.EventLog.ReportException(Int32 severity, String strMessage, String category, Exception exception)
at Altiris.Diagnostics.Logging.EventLog.ReportException(String strMessage, Exception exception)
at Symantec.Installation.EvaluationBrokerProxy.IsAlive()
at Symantec.Installation.Context.WizardProcess.TradeComplianceManager.ContactTradeComplianceServer()
at Symantec.Installation.Context.ProductListingManager.SetProperSimMode()
at Symantec.Installation.Context.ProductListingManager.LoadProductListing()
at Symantec.Installation.Context.ProductListingManager.PlLoadAndUpdate()
at Symantec.Installation.Context.ProductListingManager.<BeginPlLoadAndUpdate>b__0()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
)
( Extra Details: Type=System.Net.WebException Src=System.Web.Services )
ITMS 7.x
Squid Proxy seems to be configured to ignore expect100 commands.
Option 1: See the below Squid Proxy documentation on Expect100Continue commands:
http://www.squid-cache.org/Doc/config/ignore_expect_100/
Option 2: Create a proxy exception for the Altiris Licensing server.