From 81f8ae5d3c3a8098e63ce669c288c069c9475e52 Mon Sep 17 00:00:00 2001 From: Radim Kolar Date: Mon, 8 Jul 2024 09:21:52 +0200 Subject: [PATCH] copy PPATH structure for reference --- tests/parsecheck.c | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/tests/parsecheck.c b/tests/parsecheck.c index 70b2409..b0380a4 100644 --- a/tests/parsecheck.c +++ b/tests/parsecheck.c @@ -18,24 +18,37 @@ const char *testcases[]={ "filename\npasswd","filename\nsymlink\npasswd", "file/.dir","../updir","file/../dir", NULL}; + +/* PPATH structure from server_def.h */ +#if 0 +struct { + const char *fullp; /* ptr to string containing full pathname */ + const char *f_ptr; /* ptr to begining of last path component */ + unsigned int f_len; /* length of last component in path */ + const char *d_ptr; /* ptr to beginning of directory component */ + unsigned int d_len; /* length of directory part of path. */ + const char *passwd; /* ptr to password */ + char inetstr[16]; /* inet-address of remote-FSP */ + char portstr[8]; /* port of remote-FSP */ +}; +#endif + PPATH testresults[]={ - {".",".",1,".",1,NULL}, {NULL}, {".",".",1,".",1,NULL}, + {".",".",1,".",1,NULL,{0},{0}}, {NULL}, {".",".",1,".",1,NULL}, {".",".",1,".",1,"onlypwd"}, {"filename","filename",8,".",1,NULL} , {"filename","filename",8,".",1,NULL} , {"filename","filename",8,".",1,NULL}, {"dirname/filename","filename",8,"dirname",7,NULL} , {"dirname/filename","filename",8,"dirname",7,NULL} , {"dirname//filename","filename",8,"dirname",7,NULL}, {"dir1name/dir2name/",".",1,"dir1name/dir2name",17}, {"dir1name//dir2name//",".",1,"dir1name//dir2name",18}, {"filename","filename",8,".",1,"passwd"}, {"filename","filename",8,".",1,"passwd"}, - {NULL},{NULL},{NULL}, - - + {NULL},{NULL},{NULL} }; static void print_path(PPATH *pp) { printf("fullpath: %s ", pp->fullp); - if(strcmp(pp->fullp,pp->d_ptr)) + if(strcmp(pp->fullp, pp->d_ptr)) { - printf("d_ptr: %s (%d) ", pp->d_ptr, pp->d_len); + printf("d_ptr: %s (%d) ", pp->d_ptr, pp->d_len); } else { printf("(%d) ", pp->d_len); } @@ -45,8 +58,7 @@ static void print_path(PPATH *pp) printf("passwd: %s", pp->passwd); } -/* returns: 0 okay, 1 different */ - +/** returns: 0 okay, 1 different */ static int compareresults(PPATH *p1, PPATH *p2) { if(p1->fullp==NULL && p2->fullp==NULL) return 0; @@ -56,8 +68,7 @@ static int compareresults(PPATH *p1, PPATH *p2) if(strcmp(p1->f_ptr,p2->f_ptr)) return -1; if(p1->d_len!=p2->d_len) return -1; if(strncmp(p1->d_ptr,p2->d_ptr,p1->d_len)) return -1; - if(p1->passwd==NULL && p2->passwd==NULL) - return 0; + if(p1->passwd==NULL && p2->passwd==NULL) return 0; if(p1->passwd==NULL || p2->passwd==NULL) return -1; if(strcmp(p1->passwd,p2->passwd)) return -1; return 0;