def algorithm=(alg)
if (alg.class == String)
if (alg.downcase=="hmac-md5")
@algorithm = HMAC_MD5;
elsif (alg.downcase=="hmac-sha1")
@algorithm = HMAC_SHA1;
elsif (alg.downcase=="hmac-sha256")
@algorithm = HMAC_SHA256;
else
raise ArgumentError.new("Invalid TSIG algorithm")
end
elsif (alg.class == Name)
if (alg!=HMAC_MD5 && alg!=HMAC_SHA1 && alg!=HMAC_SHA256)
raise ArgumentException.new("Invalid TSIG algorithm")
end
@algorithm=alg
else
raise ArgumentError.new("#{alg.class} not valid type for Dnsruby::RR::TSIG#algorithm= - use String or Name")
end
Dnsruby.log.debug{"Using #{@algorithm.to_s} algorithm"}
end