parseipmask.c 283 B

123456789101112131415161718192021222324
  1. #include <cdefs.h>
  2. #include <format.h>
  3. char* parseipmask(char* p, uint8_t* ip, uint8_t* mask)
  4. {
  5. int n;
  6. if(!(p = parseip(p, ip)))
  7. return p;
  8. if(*p == '/') {
  9. p = parseint(p+1, &n);
  10. if(n < 0 || n > 32)
  11. return NULL;
  12. *mask = n;
  13. } else {
  14. *mask = 32;
  15. };
  16. return p;
  17. }