X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rln;a=blobdiff_plain;f=rln.c;h=23b2fea77f8df642a65f53f03cb118a47c32f0c8;hp=a117a86b27fc2e75fa0e4beb1ddf22230e4f57a3;hb=bd10a921a726ffb950afede504b6ff79df813d16;hpb=822fb0b2350996a53d3a560dfd47110febc4f108 diff --git a/rln.c b/rln.c index a117a86..23b2fea 100644 --- a/rln.c +++ b/rln.c @@ -2448,7 +2448,8 @@ int LoadArchive(char * fname, int fd) } // Check to see if a long filename was requested - if (objName[0] == 0x20) + // N.B.: " " is for GNU archives, and "/" is for BSD archives + if ((objName[0] == 0x20) || (objName[0] == '/')) { uint32_t fnSize = atoi(objName + 1); @@ -3114,6 +3115,21 @@ int main(int argc, char * argv[]) ExitLinker(); } + // Check to see if include paths actually exist + if (strlen(libdir) > 0) + { + DIR * test = opendir(libdir); + + if (test == NULL) + { + printf("Invalid include path: %s\n", libdir); + errflag = 1; + ExitLinker(); + } + + closedir(test); + } + if (!zflag && !vflag) { ShowVersion(); // Display version information