10 int joblist_append(server
*srv
, connection
*con
) {
11 if (con
->in_joblist
) return 0;
13 if (srv
->joblist
->size
== 0) {
14 srv
->joblist
->size
= 16;
15 srv
->joblist
->ptr
= malloc(sizeof(*srv
->joblist
->ptr
) * srv
->joblist
->size
);
16 force_assert(NULL
!= srv
->joblist
->ptr
);
17 } else if (srv
->joblist
->used
== srv
->joblist
->size
) {
18 srv
->joblist
->size
+= 16;
19 srv
->joblist
->ptr
= realloc(srv
->joblist
->ptr
, sizeof(*srv
->joblist
->ptr
) * srv
->joblist
->size
);
20 force_assert(NULL
!= srv
->joblist
->ptr
);
23 srv
->joblist
->ptr
[srv
->joblist
->used
++] = con
;
28 void joblist_free(server
*srv
, connections
*joblist
) {
35 connection
*fdwaitqueue_unshift(server
*srv
, connections
*fdwaitqueue
) {
40 if (fdwaitqueue
->used
== 0) return NULL
;
42 con
= fdwaitqueue
->ptr
[0];
44 memmove(fdwaitqueue
->ptr
, &(fdwaitqueue
->ptr
[1]), --fdwaitqueue
->used
* sizeof(*(fdwaitqueue
->ptr
)));
49 int fdwaitqueue_append(server
*srv
, connection
*con
) {
50 if (srv
->fdwaitqueue
->size
== 0) {
51 srv
->fdwaitqueue
->size
= 16;
52 srv
->fdwaitqueue
->ptr
= malloc(sizeof(*(srv
->fdwaitqueue
->ptr
)) * srv
->fdwaitqueue
->size
);
53 force_assert(NULL
!= srv
->fdwaitqueue
->ptr
);
54 } else if (srv
->fdwaitqueue
->used
== srv
->fdwaitqueue
->size
) {
55 srv
->fdwaitqueue
->size
+= 16;
56 srv
->fdwaitqueue
->ptr
= realloc(srv
->fdwaitqueue
->ptr
, sizeof(*(srv
->fdwaitqueue
->ptr
)) * srv
->fdwaitqueue
->size
);
57 force_assert(NULL
!= srv
->fdwaitqueue
->ptr
);
60 srv
->fdwaitqueue
->ptr
[srv
->fdwaitqueue
->used
++] = con
;
65 void fdwaitqueue_free(server
*srv
, connections
*fdwaitqueue
) {
67 free(fdwaitqueue
->ptr
);