svn commit: r184256 - projects/csup_cvsmode/contrib/csup
Ulf Lilleengen
lulf at FreeBSD.org
Sat Oct 25 10:52:23 UTC 2008
Author: lulf
Date: Sat Oct 25 10:52:22 2008
New Revision: 184256
URL: http://svn.freebsd.org/changeset/base/184256
Log:
- Implement support for retrieving a size_t type from the protocol stream.
Modified:
projects/csup_cvsmode/contrib/csup/proto.c
projects/csup_cvsmode/contrib/csup/proto.h
Modified: projects/csup_cvsmode/contrib/csup/proto.c
==============================================================================
--- projects/csup_cvsmode/contrib/csup/proto.c Sat Oct 25 10:23:24 2008 (r184255)
+++ projects/csup_cvsmode/contrib/csup/proto.c Sat Oct 25 10:52:22 2008 (r184256)
@@ -950,6 +950,26 @@ proto_get_int(char **s, int *val, int ba
}
/*
+ * Get a size_t token.
+ */
+int
+proto_get_sizet(char **s, size_t *val, int base)
+{
+ unsigned long long tmp;
+ char *cp, *end;
+
+ cp = proto_get_ascii(s);
+ if (cp == NULL)
+ return (-1);
+ errno = 0;
+ tmp = strtoll(cp, &end, base);
+ if (errno || *end != '\0')
+ return (-1);
+ *val = (size_t)tmp;
+ return (0);
+}
+
+/*
* Get a time_t token.
*
* Ideally, we would use an intmax_t and strtoimax() here, but strtoll()
Modified: projects/csup_cvsmode/contrib/csup/proto.h
==============================================================================
--- projects/csup_cvsmode/contrib/csup/proto.h Sat Oct 25 10:23:24 2008 (r184255)
+++ projects/csup_cvsmode/contrib/csup/proto.h Sat Oct 25 10:52:22 2008 (r184256)
@@ -44,6 +44,7 @@ int proto_printf(struct stream *, const
char *proto_get_ascii(char **);
char *proto_get_rest(char **);
int proto_get_int(char **, int *, int);
+int proto_get_sizet(char **, size_t *, int);
int proto_get_time(char **, time_t *);
#endif /* !_PROTO_H_ */
More information about the svn-src-projects
mailing list