Strophe 0.9 XMPP client library

Functions
util.c File Reference

Utility functions. More...

## Functions
char * | xmpp_strdup (const xmpp_ctx_t *const ctx, const char *const s)
| implement our own strdup that uses the ctx allocator
char * | xmpp_strtok_r (char *s, const char *delim, char **saveptr)
| strtok_r(3) implementation.
uint64_t | time_stamp (void)
| Return an integer based time stamp.
uint64_t | time_elapsed (uint64_t t1, uint64_t t2)
| Get the time elapsed between two time stamps.
void | disconnect_mem_error (xmpp_conn_t *const conn)
| Disconnect the stream with a memory error.

## Detailed Description

Utility functions.

## Function Documentation

## ◆ xmpp_strdup()

char * xmpp_strdup | ( | const xmpp_ctx_t *const | ctx,
|  | const char *const | s )

implement our own strdup that uses the ctx allocator

Duplicate a string. This function replaces the standard strdup library call with a version that uses the Strophe context object's allocator.

Parameters

  ctx | a Strophe context object
  s | a string

Returns
  a new allocates string with the same data as s or NULL on error

## ◆ 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

  t1 | first time stamp
  t2 | second time stamp

Returns
  number of milliseconds between the stamps

## ◆ disconnect_mem_error()

void disconnect_mem_error | ( | xmpp_conn_t *const | conn | ) |

Disconnect the stream with a memory error.

This is a convenience function used internally by various parts of the Strophe library for terminating the connection because of a memory error.

Parameters

  conn | a Strophe connection object