version 1.8, 2009/02/04 20:35:14 |
version 1.9, 2009/07/25 08:44:27 |
|
|
}; |
}; |
|
|
struct listen * |
struct listen * |
listen_new(struct fileops *ops, char *path, |
listen_new(struct fileops *ops, char *path) |
struct aparams *wpar, struct aparams *rpar, int maxweight) |
|
{ |
{ |
int sock, oldumask; |
int sock, oldumask; |
struct sockaddr_un sockname; |
struct sockaddr_un sockname; |
|
|
exit(1); |
exit(1); |
} |
} |
f->fd = sock; |
f->fd = sock; |
f->wpar = *wpar; |
|
f->rpar = *rpar; |
|
f->maxweight = maxweight; |
|
#ifdef DEBUG |
|
if (debug_level > 0) { |
|
fprintf(stderr, "listen_new: %s: wpar=", f->path); |
|
aparams_print(&f->wpar); |
|
fprintf(stderr, ", rpar="); |
|
aparams_print(&f->rpar); |
|
fprintf(stderr, ", vol=%u\n", f->maxweight); |
|
} |
|
#endif |
|
return f; |
return f; |
bad_close: |
bad_close: |
close(sock); |
close(sock); |
|
|
close(sock); |
close(sock); |
return 0; |
return 0; |
} |
} |
if (sock_new(&sock_ops, sock, "socket", |
if (sock_new(&sock_ops, sock) == NULL) { |
&f->wpar, &f->rpar, f->maxweight) == NULL) { |
|
close(sock); |
close(sock); |
return 0; |
return 0; |
} |
} |