[rtems-libbsd commit] Provide strtoq() and strtouq()
Sebastian Huber
sebh at rtems.org
Mon Mar 6 11:10:27 UTC 2017
Module: rtems-libbsd
Branch: master
Commit: 18a623e5b2acc9eff2c2b6ca54041cfa74862a6c
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=18a623e5b2acc9eff2c2b6ca54041cfa74862a6c
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Mon Mar 6 12:07:32 2017 +0100
Provide strtoq() and strtouq()
---
freebsd/sys/sys/systm.h | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/freebsd/sys/sys/systm.h b/freebsd/sys/sys/systm.h
index 2f781e9..3512c49 100644
--- a/freebsd/sys/sys/systm.h
+++ b/freebsd/sys/sys/systm.h
@@ -276,8 +276,27 @@ int sscanf(const char *, char const *, ...) __nonnull(1) __nonnull(2) __scanflik
int vsscanf(const char *, char const *, __va_list) __nonnull(1) __nonnull(2) __scanflike(2, 0);
long strtol(const char *, char **, int) __nonnull(1);
u_long strtoul(const char *, char **, int) __nonnull(1);
+#ifndef __rtems__
quad_t strtoq(const char *, char **, int) __nonnull(1);
u_quad_t strtouq(const char *, char **, int) __nonnull(1);
+#else /* __rtems__ */
+long long strtoll(const char *, char **, int);
+unsigned long long strtoull(const char *, char **, int);
+
+static inline quad_t __nonnull(1)
+strtoq(const char *nptr, char **endptr, int base)
+{
+
+ return (strtoll(nptr, endptr, base));
+}
+
+static inline u_quad_t __nonnull(1)
+strtouq(const char *nptr, char **endptr, int base)
+{
+
+ return (strtoull(nptr, endptr, base));
+}
+#endif /* __rtems__ */
void tprintf(struct proc *p, int pri, const char *, ...) __printflike(3, 4);
void vtprintf(struct proc *, int, const char *, __va_list) __printflike(3, 0);
void hexdump(const void *ptr, int length, const char *hdr, int flags);
More information about the vc
mailing list