apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bojan Smojver <bo...@rexursive.com>
Subject Re: Changing the order of cleanup for some core objects
Date Wed, 23 Jul 2008 07:13:18 GMT
On Wed, 2008-07-23 at 17:00 +1000, Bojan Smojver wrote:

> When you create your socket with apr_socket_create(), there is a pool
> argument there. If you hang a cleanup off it, it will run before close()
> in socket_cleanup().

Example constructor:
struct my_socket_t{
  apr_socket_t *s;
  void *other_stuff;
typedef struct my_socket_t my_socket_t;

static apr_status_t my_close(void *data){
  my_socket_t *s=data;

  return my_fancy_thing_with_the_socket(s);

static apr_status_t db_create(void **rsc,void *parms,apr_pool_t *pool){
  my_socket_t *s;

  apr_socket_create(&s->s,<can't remember what>,pool);



  return APR_SUCCESS;


View raw message