spa/lookup.c

54 lines
894 B
C
Raw Normal View History

2022-03-04 22:37:21 +00:00
#include <stdio.h>
#include <string.h>
#include "global.h"
#include "db.h"
FILE* errlog;
#undef ERRLOG
2022-03-07 22:04:22 +00:00
int sigil(char* req){
2022-03-04 22:37:21 +00:00
char buf[1024];
U32 idx = sigil_idx(req);
int ret = idx_URL(idx,buf);
if(ret) {
2022-03-07 22:04:22 +00:00
printf("[%s](@%X) %s\n",req,idx*4,buf);
return 0;
} else {
printf("Not Found\n");
return 1;
}
}
2022-03-04 22:37:21 +00:00
2022-03-07 22:04:22 +00:00
int url(char* url){
printf("[%s]\n",url);
U32 idx = URL_check(url);
if(idx){
char sigil[5];
idx_sigil(idx,sigil);
printf("%s\n",sigil);
2022-03-04 22:37:21 +00:00
return 0;
} else {
printf("Not Found\n");
return 1;
}
}
2022-03-07 22:04:22 +00:00
2022-03-04 22:37:21 +00:00
int main(int argc,char*argv[]){
2022-03-07 22:04:22 +00:00
if(argc>2) {
2022-03-04 22:37:21 +00:00
printf("Usage: lookup XXXX<enter>, where XXXX is a 4-char sigil\n");
2022-03-07 22:04:22 +00:00
printf(" or lookup <url><enter>\n");
2022-03-04 22:37:21 +00:00
return 1;
}
2022-03-07 22:04:22 +00:00
int ret;
2022-03-04 22:37:21 +00:00
sys_open();
2022-03-07 22:04:22 +00:00
if(4==strlen(argv[1])) {
ret = sigil(argv[1]);
} else {
ret = url(argv[1]);
}
2022-03-04 22:37:21 +00:00
sys_close();
return ret;
}