diff options
| author | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2011-01-04 16:37:34 +0100 |
|---|---|---|
| committer | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2011-01-04 16:37:34 +0100 |
| commit | 2b90dcd5034390a79d6d37b3d2b33bde0c73ab83 (patch) | |
| tree | 7e6bb3099d1509000de3617f5811c3a2ef153970 | |
| parent | 03b15e3886d8f65047fc0abced2e20f16fcb1ecf (diff) | |
| download | lasso-2b90dcd5034390a79d6d37b3d2b33bde0c73ab83.tar.gz lasso-2b90dcd5034390a79d6d37b3d2b33bde0c73ab83.tar.xz lasso-2b90dcd5034390a79d6d37b3d2b33bde0c73ab83.zip | |
[saml2] when parsing short numbers reinitialize errno
| -rw-r--r-- | lasso/saml-2.0/provider.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lasso/saml-2.0/provider.c b/lasso/saml-2.0/provider.c index 4f9192d5..35beeaa9 100644 --- a/lasso/saml-2.0/provider.c +++ b/lasso/saml-2.0/provider.c @@ -127,8 +127,10 @@ xsdIsFalse(xmlChar *value) static gboolean xsdUnsignedShortParse(xmlChar *value, int *out) { - int l = strtol((char*)value, NULL, 10); + int l = 0; + errno = 0; + l = strtol((char*)value, NULL, 10); if (((l == LONG_MIN || l == LONG_MAX) && errno == ERANGE) || errno == EINVAL || l < 0 || l >= 65535) { return FALSE; |
