version 1.43.2.2, 2005/08/02 21:08:32
|
version 1.44, 2004/11/29 18:48:19
|
|
|
// Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) | // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) |
// Carol Ann Krug Graves, Hewlett-Packard Company | // Carol Ann Krug Graves, Hewlett-Packard Company |
// (carolann_graves@hp.com) | // (carolann_graves@hp.com) |
// Dave Sudlik, IBM (dsudlik@us.ibm.com) for Bug#1462 |
// Dave Sudlik, IBM (dsudlik@us.ibm.com) |
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
|
|
case CIMTYPE_REFERENCE: | case CIMTYPE_REFERENCE: |
kbType = REFERENCE; | kbType = REFERENCE; |
break; | break; |
|
case CIMTYPE_OBJECT: |
|
throw TypeMismatchException(); |
|
// From PEP 194: |
|
// Open Issue for the DMTF: Are EmbeddedObject properties permitted to be keys? |
|
break; |
default: | default: |
kbType = NUMERIC; | kbType = NUMERIC; |
break; | break; |
|
|
kbValue = XmlReader::stringToValue(0, getValue().getCString(), | kbValue = XmlReader::stringToValue(0, getValue().getCString(), |
value.getType()); | value.getType()); |
break; | break; |
|
case CIMTYPE_OBJECT: |
|
return false; |
|
// From PEP 194: |
|
// Open Issue for the DMTF: Are EmbeddedObject properties permitted to be keys? |
|
break; |
default: // Numerics | default: // Numerics |
if (getType() != NUMERIC) return false; | if (getType() != NUMERIC) return false; |
kbValue = XmlReader::stringToValue(0, getValue().getCString(), | kbValue = XmlReader::stringToValue(0, getValue().getCString(), |
|
|
expectHostSegment = false; | expectHostSegment = false; |
hostSegmentIsNumeric = true; // assume all-numeric host segment | hostSegmentIsNumeric = true; // assume all-numeric host segment |
| |
if (!(isalnum(hostname[i]) || (hostname[i] == '_'))) |
if (!isalnum(hostname[i++])) |
{ | { |
return false; | return false; |
} | } |
| |
while (isalnum(hostname[i]) || (hostname[i] == '-') || |
while (isalnum(hostname[i]) || (hostname[i] == '-')) |
(hostname[i] == '_')) |
|
{ | { |
// If a non-digit is encountered, set "all-numeric" | // If a non-digit is encountered, set "all-numeric" |
// flag to false | // flag to false |
if (isalpha(hostname[i]) || (hostname[i] == '-') || |
if (isalpha(hostname[i]) || (hostname[i] == '-')) { |
(hostname[i] == '_')) |
|
{ |
|
hostSegmentIsNumeric = false; | hostSegmentIsNumeric = false; |
} | } |
i++; | i++; |