12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- /*====================================================================*
- *
- * bool checkfilename (char const * pathname);
- *
- * files.h
- *
- * confirm that the filename portion of a pathname string contains
- * only letters, digits, periods, underscores and hyphens;
- *
- * this prevents users from entering an Ethernet address where a
- * filename should appear on the command line; Ethernet addresses
- * are also valid filenames;
- *
- * Motley Tools by Charles Maier;
- * Copyright (c) 2001-2006 by Charles Maier Associates;
- * Licensed under the Internet Software Consortium License;
- *
- *--------------------------------------------------------------------*/
- #ifndef CHECKFILENAME_SOURCE
- #define CHECKFILENAME_SOURCE
- #include <string.h>
- #include <ctype.h>
- #include "../tools/files.h"
- bool checkfilename (char const * pathname)
- {
- char const * filename = pathname;
- while (*pathname)
- {
- if ((*pathname == '/') || (*pathname == '\\'))
- {
- filename = pathname + 1;
- }
- pathname++;
- }
- while (isalnum (*filename) || (*filename == '.') || (*filename == '_') || (*filename == '-'))
- {
- filename++;
- }
- return (*filename == (char) (0));
- }
- #endif
|