Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ Advanced options (query):
- nameserver-search-by-ip
- entity-search
- entity-search-by-handle
- autnum-search
The servers for domain, ip, autnum, url queries can be
determined automatically. Otherwise, the RDAP server
(--server=URL) must be specified.
Expand Down Expand Up @@ -286,6 +287,8 @@ func RunCLI(args []string, stdout io.Writer, stderr io.Writer, options CLIOption
req = NewRequest(NameserverSearchRequest, queryText)
case "nameserver-search-by-ip":
req = NewRequest(NameserverSearchByNameserverIPRequest, queryText)
case "autnum-search":
req = NewRequest(AutnumSearchRequest, queryText)
default:
printError(stderr, fmt.Sprintf("Unknown query type '%s'", *queryType))
return 1
Expand Down
7 changes: 7 additions & 0 deletions request.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ const (
NameserverSearchByNameserverIPRequest
EntitySearchRequest
EntitySearchByHandleRequest
AutnumSearchRequest

// RawRequest is a request with a fixed RDAP URL.
RawRequest
Expand Down Expand Up @@ -68,6 +69,8 @@ func (r RequestType) String() string {
return "entity-search"
case EntitySearchByHandleRequest:
return "entity-search-by-handle"
case AutnumSearchRequest:
return "autnum-search"
case RawRequest:
return "url"
default:
Expand Down Expand Up @@ -100,6 +103,7 @@ func (r RequestType) String() string {
// rdap.NameserverSearchByNameserverIPRequest | No | nameservers?ip=QUERY | 192.0.2.0
// rdap.EntitySearchRequest | No | entities?fn=QUERY | ABC*-VRSN
// rdap.EntitySearchByHandleRequest | No | entities?handle=QUERY | ABC*-VRSN
// rdap.AutnumSearchRequest | No | autnums?handle=QUERY | AS6006*
// | | |
// rdap.RawRequest | N/A | N/A | N/A
//
Expand Down Expand Up @@ -216,6 +220,9 @@ func (r *Request) pathAndValues() (string, url.Values) {
case EntitySearchByHandleRequest:
path = "entities"
values["handle"] = []string{r.Query}
case AutnumSearchRequest:
path = "autnums"
values["handle"] = []string{r.Query}
case RawRequest:
// Server URL(s) are the entire request.
default:
Expand Down
5 changes: 5 additions & 0 deletions request_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,11 @@ func TestNewSearchRequests(t *testing.T) {
"MY-HANDLE*&x=1",
"entities?handle=MY-HANDLE%2A%26x%3D1",
},
{
AutnumSearchRequest,
"AS6006*&x=1",
"autnums?handle=AS6006%2A%26x%3D1",
},
}

for _, test := range tests {
Expand Down