diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2010-09-04 22:51:38 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2010-09-04 22:51:38 +0200 |
commit | bafc89a858e658dbd56ce74b808260c2ad67f0d5 (patch) | |
tree | cab7d083f2479aa448ad29bde96e5bf66238a9bd /plugins | |
parent | 35cfb432d45dc37cc8bfcc00de8492db6a3ec328 (diff) | |
download | ofono-bafc89a858e658dbd56ce74b808260c2ad67f0d5.tar.bz2 |
udev: Check for valid USB serial numbers
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/udev.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/plugins/udev.c b/plugins/udev.c index 6720a0cd..38a63127 100644 --- a/plugins/udev.c +++ b/plugins/udev.c @@ -24,6 +24,7 @@ #endif #include <errno.h> +#include <ctype.h> #include <libudev.h> @@ -86,8 +87,14 @@ static const char *get_serial(struct udev_device *udev_device) entry = udev_list_entry_get_next(entry); } - if (serial && strpbrk(serial, ".-_?*") != NULL) - return NULL; + if (serial != NULL) { + unsigned int i, len = strlen(serial); + + for (i = 0; i < len; i++) { + if (!isalnum(serial[i])) + return NULL; + } + } return serial; } |