void Qsocket( int domain , int type ) {
vb.used= 0;
Tvba("socket");
- Tvbf(domain==PF_INET ? " domain=PF_INET" :
- domain==PF_INET6 ? " domain=PF_INET6" :
+ Tvbf(domain==AF_INET ? " domain=AF_INET" :
+ domain==AF_INET6 ? " domain=AF_INET6" :
" domain=AF_???");
Tvbf(type==SOCK_STREAM ? " type=SOCK_STREAM" : " type=SOCK_DGRAM");
Q_vb();
void Tvbfdset(int max, const fd_set *fds) {
int i;
const char *comma= "";
+ if (!fds) {
+ Tvba("null");
+ return;
+ }
Tvba("[");
for (i=0; i<max; i++) {
if (!FD_ISSET(i,fds)) continue;
size_t osz;
if (op) { oldnode= (void*)((char*)op - MALLOCHSZ); osz= oldnode->sz; } else { osz= 0; }
np= Hmalloc(nsz);
- memcpy(np,op, osz>nsz ? nsz : osz);
+ if (osz) memcpy(np,op, osz>nsz ? nsz : osz);
Hfree(op);
return np;
}
-void Hexit(int rv) {
+void Texit(int rv) {
struct malloced *loopnode;
Tshutdown();
adns__vbuf_free(&vb);
}
exit(rv);
}
+void Hexit(int rv) {
+ vb.used= 0;
+ Tvbf("exit %d", rv);
+ Q_vb();
+ Texit(0);
+}
pid_t Hgetpid(void) {
return 2264; /* just some number */
}