diff options
author | Douglas Bagnall <douglas.bagnall@catalyst.net.nz> | 2015-04-01 17:46:43 +1300 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2015-05-29 11:08:21 +0200 |
commit | d0f9f32d0a912972b5b23a4c9015a706d539b638 (patch) | |
tree | d647cd6979166e383b00be0e77f12b12417f3a4b /source4/scripting | |
parent | 7ac59745b399740b675d4cf9e635c709c7ac67ae (diff) | |
download | samba-d0f9f32d0a912972b5b23a4c9015a706d539b638.tar.gz |
KCC: Fail earlier if there is no IP transport
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/scripting')
-rwxr-xr-x | source4/scripting/bin/samba_kcc | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/source4/scripting/bin/samba_kcc b/source4/scripting/bin/samba_kcc index 5dcda3e0995..3696e26d79a 100755 --- a/source4/scripting/bin/samba_kcc +++ b/source4/scripting/bin/samba_kcc @@ -77,6 +77,7 @@ class KCC(object): self.part_table = {} # partition objects self.site_table = {} self.transport_table = {} + self.ip_transport = None self.sitelink_table = {} self.dsa_by_dnstr = {} self.dsa_by_guid = {} @@ -123,14 +124,13 @@ class KCC(object): transport = Transport(dnstr) transport.load_transport(self.samdb) + self.transport_table.setdefault(str(transport.guid), + transport) + if transport.name == 'IP': + self.ip_transport = transport - # already loaded - if str(transport.guid) in self.transport_table: - continue - - # Assign this transport to table - # and index by guid - self.transport_table[str(transport.guid)] = transport + if self.ip_transport is None: + raise KCCError("there doesn't seem to be an IP transport") def load_all_sitelinks(self): """Loads the inter-site siteLink objects @@ -1672,13 +1672,7 @@ class KCC(object): partial_ok = False # Utilize the IP transport only for now - transport = None - for transport in self.transport_table.values(): - if transport.name == "IP": - break - - if transport is None: - raise KCCError("Unable to find inter-site transport for IP") + transport = self.ip_transport DEBUG("edge_list %s" % edge_list) for e in edge_list: |