diff options
author | elie <elie> | 2012-04-02 16:35:47 +0000 |
---|---|---|
committer | elie <elie> | 2012-04-02 16:35:47 +0000 |
commit | 86aa949f2d104f88faabae4ed3319d96f9dbd3c8 (patch) | |
tree | 6ab246878c12eec6e8a54c4734c8c3fe84c4d63b /tools | |
parent | 301276313b8107e09505466821a7bf0f213485ad (diff) | |
download | pysnmp-86aa949f2d104f88faabae4ed3319d96f9dbd3c8.tar.gz |
MIB parent types resolution code improved
Diffstat (limited to 'tools')
-rw-r--r-- | tools/libsmi2pysnmp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/tools/libsmi2pysnmp b/tools/libsmi2pysnmp index 328f022..50ebd85 100644 --- a/tools/libsmi2pysnmp +++ b/tools/libsmi2pysnmp @@ -357,14 +357,19 @@ if 'typedefs' in mib: while len(typedefs_left): delayed = [] for t in typedefs_left: - if t[1]['parent module']['name'] == 'SNMPv2-TC' or \ - t[1]['parent module']['type'] in typedefs_seen: + if t[1]['parent module']['name'] in { \ + # implicitly imported MIBs + 'SNMPv2-TC', + 'SNMPv2-SMI' + } or t[1]['parent module']['type'] in typedefs_seen: typedefs_seen.add(t[0]) typedefs.append(t) continue delayed.append(t) if len(delayed) == len(typedefs_left): - sys.stderr.write('WARNING: %d unresolvable types found\n' % len(delayed)) + for t in typedefs_left: + sys.stderr.write('WARNING: unresolved type %s(%s::%s)\n' % (t[0], t[1]['parent module']['name'], t[1]['parent module']['type'])) + sys.stderr.write('WARNING: %d unresolvable types used\n' % len(delayed)) typedefs.extend(typedefs_left) break typedefs_left = delayed |