1294113Sbapt/* $Id: test-strtonum.c,v 1.2 2015/10/06 18:32:20 schwarze Exp $ */ 2279524Sbapt/* 3279524Sbapt * Copyright (c) 2015 Ingo Schwarze <schwarze@openbsd.org> 4279524Sbapt * 5279524Sbapt * Permission to use, copy, modify, and distribute this software for any 6279524Sbapt * purpose with or without fee is hereby granted, provided that the above 7279524Sbapt * copyright notice and this permission notice appear in all copies. 8279524Sbapt * 9279524Sbapt * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10279524Sbapt * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11279524Sbapt * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12279524Sbapt * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13279524Sbapt * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14279524Sbapt * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15279524Sbapt * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16279524Sbapt */ 17279524Sbapt 18279524Sbapt#include <stdlib.h> 19279524Sbapt 20279524Sbaptint 21279524Sbaptmain(void) 22279524Sbapt{ 23279524Sbapt const char *errstr; 24279524Sbapt 25279524Sbapt if (strtonum("1", 0, 2, &errstr) != 1) 26294113Sbapt return 1; 27279524Sbapt if (errstr != NULL) 28294113Sbapt return 2; 29279524Sbapt if (strtonum("1x", 0, 2, &errstr) != 0) 30294113Sbapt return 3; 31279524Sbapt if (errstr == NULL) 32294113Sbapt return 4; 33279524Sbapt if (strtonum("2", 0, 1, &errstr) != 0) 34294113Sbapt return 5; 35279524Sbapt if (errstr == NULL) 36294113Sbapt return 6; 37279524Sbapt if (strtonum("0", 1, 2, &errstr) != 0) 38294113Sbapt return 7; 39279524Sbapt if (errstr == NULL) 40294113Sbapt return 8; 41294113Sbapt return 0; 42279524Sbapt} 43