2017-03-21 12:30:50 +00:00
|
|
|
|
|
|
|
/*
|
|
|
|
* machinarium.
|
|
|
|
*
|
|
|
|
* cooperative multitasking engine.
|
|
|
|
*/
|
|
|
|
|
2017-03-21 12:55:23 +00:00
|
|
|
#include <machinarium_private.h>
|
|
|
|
#include <machinarium.h>
|
2017-03-21 12:30:50 +00:00
|
|
|
|
|
|
|
MACHINE_API int
|
|
|
|
machine_bind(machine_io_t obj, struct sockaddr *sa)
|
|
|
|
{
|
|
|
|
mm_io_t *io = obj;
|
2017-03-29 11:58:27 +00:00
|
|
|
mm_io_set_errno(io, 0);
|
2017-03-21 12:30:50 +00:00
|
|
|
int rc;
|
|
|
|
rc = uv_tcp_bind(&io->handle, sa, 0);
|
2017-03-29 11:58:27 +00:00
|
|
|
if (rc < 0) {
|
|
|
|
mm_io_set_errno_uv(io, rc);
|
|
|
|
return -1;
|
|
|
|
}
|
2017-03-21 12:30:50 +00:00
|
|
|
return 0;
|
|
|
|
}
|