parsetos.c
资源名称:socks5.zip [点击查看]
上传用户:sddyfurun
上传日期:2007-01-04
资源大小:525k
文件大小:1k
源码类别:
代理服务器
开发平台:
Unix_Linux
- /*
- * The routine parsetos() for UNICOS 6.0/6.1 systems. This
- * is part of UNICOS 7.0 and later.
- */
- #include <stdio.h>
- #include <sys/types.h>
- #include <netdb.h>
- #include <errno.h>
- #define MIN_TOS 0
- #define MAX_TOS 255
- int
- parsetos(name, proto)
- char *name;
- char *proto;
- {
- register char *c;
- int tos;
- struct tosent *tosp;
- tosp = gettosbyname(name, proto);
- if (tosp) {
- tos = tosp->t_tos;
- } else {
- for (c = name; *c; c++) {
- if (*c < '0' || *c > '9') {
- errno = EINVAL;
- return (-1);
- }
- }
- tos = (int)strtol(name, (char **)NULL, 0);
- }
- if (tos < MIN_TOS || tos > MAX_TOS) {
- errno = ERANGE;
- return (-1);
- }
- return (tos);
- }