1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /*====================================================================*
- *
- * 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 <cmaier@cmassoc.net>;
- * 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 ((unsigned char)* filename) || (* filename == '.') || (* filename == '_') || (* filename == '-'))
- {
- filename++;
- }
- return (* filename == (char) (0));
- }
- #endif
|