projects
/
apps
/
pfixtools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement lightweight getaddrinfo_a wrappers.
[apps/pfixtools.git]
/
job.c
diff --git
a/job.c
b/job.c
index
b7edeac
..
454b35b
100644
(file)
--- a/
job.c
+++ b/
job.c
@@
-54,8
+54,8
@@
# endif
#endif
# endif
#endif
-
#include "job.h"
#include "job.h"
+#include "gai.h"
static int epollfd = -1;
static bool sigint = false;
static int epollfd = -1;
static bool sigint = false;
@@
-77,11
+77,11
@@
static job_t *job_register_fd(job_t *job)
{
struct epoll_event event = { .data.ptr = job, .events = EPOLLRDHUP };
{
struct epoll_event event = { .data.ptr = job, .events = EPOLLRDHUP };
- if (job->
stat
e & (JOB_READ | JOB_LISTEN)) {
+ if (job->
mod
e & (JOB_READ | JOB_LISTEN)) {
event.events |= EPOLLIN;
}
event.events |= EPOLLIN;
}
- if (job->
stat
e & (JOB_WRITE | JOB_CONN)) {
+ if (job->
mod
e & (JOB_WRITE | JOB_CONN)) {
event.events |= EPOLLOUT;
}
event.events |= EPOLLOUT;
}
@@
-94,19
+94,19
@@
static job_t *job_register_fd(job_t *job)
return job;
}
return job;
}
-void job_update_
state(job_t *job, int stat
e)
+void job_update_
mode(job_t *job, int mod
e)
{
struct epoll_event event = { .data.ptr = job, .events = EPOLLRDHUP };
{
struct epoll_event event = { .data.ptr = job, .events = EPOLLRDHUP };
- if (job->
state == stat
e)
+ if (job->
mode == mod
e)
return;
return;
- job->
state = stat
e;
- if (job->
stat
e & (JOB_READ | JOB_LISTEN)) {
+ job->
mode = mod
e;
+ if (job->
mod
e & (JOB_READ | JOB_LISTEN)) {
event.events |= EPOLLIN;
}
event.events |= EPOLLIN;
}
- if (job->
stat
e & (JOB_WRITE | JOB_CONN)) {
+ if (job->
mod
e & (JOB_WRITE | JOB_CONN)) {
event.events |= EPOLLOUT;
}
event.events |= EPOLLOUT;
}
@@
-116,7
+116,7
@@
void job_update_state(job_t *job, int state)
}
}
}
}
-job_t *job_accept(job_t *listener, int
stat
e)
+job_t *job_accept(job_t *listener, int
mod
e)
{
int sock;
job_t *res;
{
int sock;
job_t *res;
@@
-133,7
+133,7
@@
job_t *job_accept(job_t *listener, int state)
res = job_new();
res->fd = sock;
res = job_new();
res->fd = sock;
- res->
state = stat
e;
+ res->
mode = mod
e;
res->process = listener->process;
res->stop = listener->stop;
return job_register_fd(res);
res->process = listener->process;
res->stop = listener->stop;
return job_register_fd(res);
@@
-202,6
+202,8
@@
void job_loop(void)
job_delete(&job);
}
}
job_delete(&job);
}
}
+
+ gai_process();
}
}
}
}