Strophe 0.11
XMPP client library
Macros | Functions
util.h File Reference

Internally used utility functions. More...

Macros

#define ARRAY_SIZE(arr)   (sizeof(arr) / sizeof((arr)[0]))
 
#define xmpp_min(x, y)   ((x) < (y) ? (x) : (y))
 

Functions

char * xmpp_strtok_r (char *s, const char *delim, char **saveptr)
 strtok_r(3) implementation. More...
 
uint64_t time_stamp (void)
 Return an integer based time stamp. More...
 
uint64_t time_elapsed (uint64_t t1, uint64_t t2)
 Get the time elapsed between two time stamps. More...
 
void hex_encode (char *writebuf, void *readbuf, size_t len)
 

Detailed Description

Internally used utility functions.

Macro Definition Documentation

◆ ARRAY_SIZE

#define ARRAY_SIZE (   arr)    (sizeof(arr) / sizeof((arr)[0]))

◆ xmpp_min

#define xmpp_min (   x,
 
)    ((x) < (y) ? (x) : (y))

Function Documentation

◆ xmpp_strtok_r()

char * xmpp_strtok_r ( char *  s,
const char *  delim,
char **  saveptr 
)

strtok_r(3) implementation.

This function has appeared in POSIX.1-2001, but not in C standard. For example, visual studio older than 2005 doesn't provide strtok_r() nor strtok_s().

◆ time_stamp()

uint64_t time_stamp ( void  )

Return an integer based time stamp.

This function uses gettimeofday or timeGetTime (on Win32 platforms) to compute an integer based time stamp. This is used internally by the event loop and timed handlers.

Returns
an integer time stamp

◆ time_elapsed()

uint64_t time_elapsed ( uint64_t  t1,
uint64_t  t2 
)

Get the time elapsed between two time stamps.

This function returns the time elapsed between t1 and t2 by subtracting t1 from t2. If t2 happened before t1, the result will be negative. This function is used internally by the event loop and timed handlers.

Parameters
t1first time stamp
t2second time stamp
Returns
number of milliseconds between the stamps

◆ hex_encode()

void hex_encode ( char *  writebuf,
void *  readbuf,
size_t  len 
)