commit 33f69f8: [Minor] Add support of CNAME requests to the lua resolver
Vsevolod Stakhov
vsevolod at rspamd.com
Thu Aug 11 20:42:06 UTC 2022
Author: Vsevolod Stakhov
Date: 2022-08-11 21:36:50 +0100
URL: https://github.com/rspamd/rspamd/commit/33f69f85ea3c7f27ac3a98a5eaf8ed0d232110fd (HEAD -> master)
[Minor] Add support of CNAME requests to the lua resolver
---
contrib/librdns/util.c | 57 +++++++++++++++++++++++++---------------------
src/lua/lua_dns_resolver.c | 5 ++++
2 files changed, 36 insertions(+), 26 deletions(-)
diff --git a/contrib/librdns/util.c b/contrib/librdns/util.c
index b20b327bc..0172ce00e 100644
--- a/contrib/librdns/util.c
+++ b/contrib/librdns/util.c
@@ -306,6 +306,9 @@ rdns_type_fromstr (const char *str)
else if (strcmp (str, "tlsa") == 0) {
return RDNS_REQUEST_TLSA;
}
+ else if (strcmp (str, "cname") == 0) {
+ return RDNS_REQUEST_CNAME;
+ }
else if (strcmp (str, "any") == 0) {
return RDNS_REQUEST_ANY;
}
@@ -318,32 +321,34 @@ const char *
rdns_str_from_type (enum rdns_request_type rcode)
{
switch (rcode) {
- case RDNS_REQUEST_INVALID:
- return "(invalid)";
- case RDNS_REQUEST_A:
- return "a";
- case RDNS_REQUEST_NS:
- return "ns";
- case RDNS_REQUEST_SOA:
- return "soa";
- case RDNS_REQUEST_PTR:
- return "ptr";
- case RDNS_REQUEST_MX:
- return "mx";
- case RDNS_REQUEST_TXT:
- return "txt";
- case RDNS_REQUEST_SRV:
- return "srv";
- case RDNS_REQUEST_SPF:
- return "spf";
- case RDNS_REQUEST_AAAA:
- return "aaaa";
- case RDNS_REQUEST_TLSA:
- return "tlsa";
- case RDNS_REQUEST_ANY:
- return "any";
- default:
- return "(unknown)";
+ case RDNS_REQUEST_INVALID:
+ return "(invalid)";
+ case RDNS_REQUEST_A:
+ return "a";
+ case RDNS_REQUEST_NS:
+ return "ns";
+ case RDNS_REQUEST_SOA:
+ return "soa";
+ case RDNS_REQUEST_PTR:
+ return "ptr";
+ case RDNS_REQUEST_MX:
+ return "mx";
+ case RDNS_REQUEST_TXT:
+ return "txt";
+ case RDNS_REQUEST_SRV:
+ return "srv";
+ case RDNS_REQUEST_SPF:
+ return "spf";
+ case RDNS_REQUEST_AAAA:
+ return "aaaa";
+ case RDNS_REQUEST_TLSA:
+ return "tlsa";
+ case RDNS_REQUEST_CNAME:
+ return "cname";
+ case RDNS_REQUEST_ANY:
+ return "any";
+ default:
+ return "(unknown)";
}
}
diff --git a/src/lua/lua_dns_resolver.c b/src/lua/lua_dns_resolver.c
index 9a9201f0e..5bee37627 100644
--- a/src/lua/lua_dns_resolver.c
+++ b/src/lua/lua_dns_resolver.c
@@ -278,6 +278,10 @@ lua_push_dns_reply (lua_State *L, const struct rdns_reply *reply)
lua_pushinteger (L, elt->content.soa.minimum);
lua_settable (L, -3);
+ lua_rawseti (L, -2, ++i);
+ break;
+ case RDNS_REQUEST_CNAME:
+ lua_pushstring (L, elt->content.cname.name);
lua_rawseti (L, -2, ++i);
break;
default:
@@ -743,6 +747,7 @@ luaopen_dns_resolver (lua_State * L)
LUA_ENUM (L, DNS_SPF, RDNS_REQUEST_SPF);
LUA_ENUM (L, DNS_AAAA, RDNS_REQUEST_AAAA);
LUA_ENUM (L, DNS_SOA, RDNS_REQUEST_SOA);
+ LUA_ENUM (L, DNS_CNAME, RDNS_REQUEST_CNAME);
}
lua_pop (L, 1);
More information about the Commits
mailing list