diff options
author | Jean-Baptiste Queru <jbq@google.com> | 2009-11-12 18:45:14 -0800 |
---|---|---|
committer | Jean-Baptiste Queru <jbq@google.com> | 2009-11-12 18:45:14 -0800 |
commit | 194d3fa048cf909ca592dd56fa538dc9cd3f5ddb (patch) | |
tree | 3a00bb9e267cf952d7d1140ff9a39ca07ee6c994 /libc/include | |
parent | fde8642fc43bdd224e43e5ee9583a49a758fb03c (diff) | |
download | bionic-194d3fa048cf909ca592dd56fa538dc9cd3f5ddb.zip bionic-194d3fa048cf909ca592dd56fa538dc9cd3f5ddb.tar.gz bionic-194d3fa048cf909ca592dd56fa538dc9cd3f5ddb.tar.bz2 |
eclair snapshot
Diffstat (limited to 'libc/include')
-rw-r--r-- | libc/include/arpa/inet.h | 1 | ||||
-rw-r--r-- | libc/include/netinet/in.h | 4 | ||||
-rw-r--r-- | libc/include/netinet/in6.h | 8 | ||||
-rw-r--r-- | libc/include/pthread.h | 27 | ||||
-rw-r--r-- | libc/include/time.h | 22 |
5 files changed, 60 insertions, 2 deletions
diff --git a/libc/include/arpa/inet.h b/libc/include/arpa/inet.h index 3ebb872..e78e7c5 100644 --- a/libc/include/arpa/inet.h +++ b/libc/include/arpa/inet.h @@ -31,7 +31,6 @@ #include <stdint.h> #include <sys/types.h> #include <netinet/in.h> -#include <netinet/in6.h> __BEGIN_DECLS diff --git a/libc/include/netinet/in.h b/libc/include/netinet/in.h index 77ae506..0ebd926 100644 --- a/libc/include/netinet/in.h +++ b/libc/include/netinet/in.h @@ -32,6 +32,7 @@ #include <linux/socket.h> #include <linux/in.h> #include <linux/in6.h> +#include <netinet/in6.h> __BEGIN_DECLS @@ -39,6 +40,9 @@ __BEGIN_DECLS extern int bindresvport (int sd, struct sockaddr_in *sin); +static const struct in6_addr in6addr_any = IN6ADDR_ANY_INIT; +static const struct in6_addr in6addr_loopback = IN6ADDR_LOOPBACK_INIT; + __END_DECLS #endif /* _NETINET_IN_H_ */ diff --git a/libc/include/netinet/in6.h b/libc/include/netinet/in6.h index e645c48..2f5fee1 100644 --- a/libc/include/netinet/in6.h +++ b/libc/include/netinet/in6.h @@ -90,4 +90,12 @@ #define INET6_ADDRSTRLEN 46 +#define IPV6_JOIN_GROUP IPV6_ADD_MEMBERSHIP +#define IPV6_LEAVE_GROUP IPV6_DROP_MEMBERSHIP + +#define IN6ADDR_ANY_INIT {{{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}} + +#define ipv6mr_interface ipv6mr_ifindex + + #endif /* _NETINET_IN6_H */ diff --git a/libc/include/pthread.h b/libc/include/pthread.h index e3afdae..6603b3f 100644 --- a/libc/include/pthread.h +++ b/libc/include/pthread.h @@ -179,14 +179,41 @@ int pthread_cond_timedwait(pthread_cond_t *cond, * to the CLOCK_MONOTONIC clock instead, to avoid any problems when * the wall-clock time is changed brutally */ +int pthread_cond_timedwait_monotonic_np(pthread_cond_t *cond, + pthread_mutex_t *mutex, + const struct timespec *abstime); + +/* BIONIC: DEPRECATED. same as pthread_cond_timedwait_monotonic_np() + * unfortunately pthread_cond_timedwait_monotonic has shipped already + */ int pthread_cond_timedwait_monotonic(pthread_cond_t *cond, pthread_mutex_t *mutex, const struct timespec *abstime); +#define HAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC 1 + +/* BIONIC: same as pthread_cond_timedwait, except the 'reltime' given refers + * is relative to the current time. + */ +int pthread_cond_timedwait_relative_np(pthread_cond_t *cond, + pthread_mutex_t *mutex, + const struct timespec *reltime); + +#define HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE 1 + + + int pthread_cond_timeout_np(pthread_cond_t *cond, pthread_mutex_t * mutex, unsigned msecs); +/* same as pthread_mutex_lock(), but will wait up to 'msecs' milli-seconds + * before returning. same return values than pthread_mutex_trylock though, i.e. + * returns EBUSY if the lock could not be acquired after the timeout + * expired. + */ +int pthread_mutex_lock_timeout_np(pthread_mutex_t *mutex, unsigned msecs); + int pthread_key_create(pthread_key_t *key, void (*destructor_function)(void *)); int pthread_key_delete (pthread_key_t); int pthread_setspecific(pthread_key_t key, const void *value); diff --git a/libc/include/time.h b/libc/include/time.h index 35c2358..5d1a0e2 100644 --- a/libc/include/time.h +++ b/libc/include/time.h @@ -79,9 +79,29 @@ extern struct tm* gmtime_r(const time_t *timep, struct tm *result); extern char* strptime(const char *buf, const char *fmt, struct tm *tm); extern size_t strftime(char *s, size_t max, const char *format, const struct tm *tm); +/* ANDROID-BEGIN */ +struct strftime_locale { + const char * mon[12]; + const char * month[12]; + const char * standalone_month[12]; + const char * wday[7]; + const char * weekday[7]; + const char * X_fmt; + const char * x_fmt; + const char * c_fmt; + const char * am; + const char * pm; + const char * date_fmt; +}; + +extern size_t strftime_tz(char *s, size_t max, const char *format, const struct tm *tm, const struct strftime_locale* lc); +/* ANDROID-END */ + extern char *ctime(const time_t *timep); extern char *ctime_r(const time_t *timep, char *buf); +extern void tzset(void); + /* global includes */ extern char* tzname[]; extern int daylight; @@ -89,7 +109,7 @@ extern long int timezone; #define CLOCKS_PER_SEC 1000000 -extern clock_t clock(); +extern clock_t clock(void); /* BIONIC: extra linux clock goodies */ extern int clock_getres(int, struct timespec *); |