/* pktdump.c */ #include "fidodefs.h" #include "xpendian.h" /* swap */ #include "dirwrap.h" /* _PATH_DEVNULL */ #include #include #include FILE* nulfp; FILE* bodyfp; FILE* ctrlfp; /****************************************************************************/ /* Returns an ASCII string for FidoNet address 'addr' */ /****************************************************************************/ char *faddrtoa(struct fidoaddr* addr, char* outstr) { static char str[64]; if(addr==NULL) return("0:0/0"); sprintf(str,"%hu:%hu/%hu",addr->zone,addr->net,addr->node); if(addr->point) sprintf(str + strlen(str), ".%hu", addr->point); if(addr->domain[0]) sprintf(str + strlen(str), "@%s", addr->domain); if(outstr==NULL) return(str); strcpy(outstr,str); return(outstr); } bool freadstr(FILE* fp, char* str, size_t maxlen) { int ch; size_t len=0; memset(str, 0, maxlen); while((ch=fgetc(fp))!=EOF && len