Relocate and export sanitize() function

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
Joachim Nilsson
2017-01-15 23:06:45 +01:00
parent 618744cc52
commit 698f736b65
3 changed files with 26 additions and 23 deletions
+25
View File
@@ -21,6 +21,7 @@
* THE SOFTWARE.
*/
#include <ctype.h> /* isprint() */
#include <string.h>
#include <unistd.h>
@@ -43,6 +44,30 @@ void do_sleep(unsigned int sec)
;
}
/* Allowed characters in job/id/name */
static int isallowed(int ch)
{
return isprint(ch);
}
/* Sanitize user input, make sure to NUL terminate. */
char *sanitize(char *arg, size_t len)
{
size_t i = 0;
while (isallowed(arg[i]) && i < len)
i++;
if (i + 1 < len) {
arg[i + 1] = 0;
return arg;
}
if (i > 1 && arg[i] == 0)
return arg;
return NULL;
}
/**
* Local Variables: