int http_construct(http_t *client) { ASSERT(client); DO(tcp_construct(&client->tcp)); memset((char *)client + sizeof(client->tcp), 0, sizeof(*client) - sizeof(client->tcp)); client->initialized = 0; return 0; }
/* This is not a "complete" clone. Take care to see what is/isn't coppied. */ RC_TYPE tcp_clone(TCP_SOCKET **p_self_dest,TCP_SOCKET *p_self_src) { if (p_self_src == NULL) { return RC_INVALID_POINTER; } if (p_self_dest == NULL) { return RC_INVALID_POINTER; } *p_self_dest=safe_malloc(sizeof(TCP_SOCKET)); tcp_construct(*p_self_dest); super_clone(&(*p_self_dest)->super,&p_self_src->super); return RC_OK; }