Dreamhost DNS API doesn't support an "update". Old records must be removed and new ones added. Removal requires exact match of hostname, type, and value so they must first be queried to know existing IP(s) to remove.
Also fixes a bug in the BaseAccount class where if checkip() returned "" instead of None on failure, the error would be bypassed and account execute() methods would receive "" for current_address. This was encountered when dyndns method was timing out for https.
Dreamhost DNS API doesn't support an "update". Old records must be removed and new ones added. Removal requires exact match of hostname, type, and value so they must first be queried to know existing IP(s) to remove.
Also fixes a bug in the BaseAccount class where if checkip() returned "" instead of None on failure, the error would be bypassed and account execute() methods would receive "" for current_address. This was encountered when dyndns method was timing out for https.