Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.
Endpoint Management Community Blog

System.OverflowException

Created: 09 Jan 2007 • Updated: 11 Jun 2007
BRING's picture
0 0 Votes
Login to vote

If the error: "...failed with System.OverflowException: Value was either too large or too small for an Int32" appears in the Altiris logs after an Local Security Solution inventory, this explanation and solution should help you get back on track.

The log entry that points out the problem:

Thread ID: 5372
Module: AltirisNativeHelper.dll
Source: MSoft.ResourceDataTable2
Description: Column loading for row in dataclass: a2e5e8a3-8d87-4595-a669-8ac4346e4d5e, Resource e3dac727-73db-4c11-bbd9-0259d33f5444 column = c3, row = '"row c1="0" c2="0" c3="4294967295" c4="-1" c5="0" c6="0" c7="1800" c8="1800" />' failed with System.OverflowException: Value was either too large or too small for an Int32.
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at MSoft.Resource.ResourceDataTable2.ConvertColumnValue(DataColumn dc, String strValue)
   at MSoft.Resource.ResourceDataTable2.LoadRows(XmlReader dataReader). 

Our environment:

- Local Security Solution 6.1.1315
- Notification Server 6.0.6074 with R1 (KB 22690)

The visible cause is that the 'C3' column, which represents the Max Password Age, has a value of 4,294,967,295 seconds, which exceeds the value allowed for this column. The maximum SQL size for a datatype of INT is 2,147,483,647. The maximum length for MaxPasswordAge is 999 days, which is 86,313,600 seconds (999 * 24 * 60 *60). Value being reported is in hex 0xfffffffff. MS documents the total number of seconds as an unsigned value, but it is obviously a signed value (-1).

This is a bug in the Local Security Solution Agent. The value being reported is (in hex) 0xFFFFFFFF. The WIN32 API specifies that the values being retrieved are unsigned, but, in fact are signed and are being reported as unsigned, and trying to store them signed.

This incorrectly makes the machines potentially "rogue" in the sense that the values recorded have not been seen before and therefore by definition are not to corporate standards.

How to resolve the problem:

Upgrade to SP1 of Local Security Solution, which contains the fixes to resolve the issue.