From 082e3adb0f3fd13b2f9de827449f1ec1ed037bf3 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 15 Jul 2025 02:55:46 +0000 Subject: 0.9 + nightly builds --- addjob.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'addjob.c') diff --git a/addjob.c b/addjob.c index db6a9d3..6af7847 100644 --- a/addjob.c +++ b/addjob.c @@ -8,11 +8,20 @@ #include "shared.h" int main(int argc, char *argv[]) { - if (argc != 2) { - fprintf(stderr, "Usage: %s \n", argv[0]); + if (argc != 2 && argc != 3) { + fprintf(stderr, "Usage: %s [node]\n", argv[0]); return 1; } + int target_node = -1; + if (argc == 3) { + target_node = atoi(argv[2]); + if (target_node < 0 || target_node >= MAX_NODES) { + fprintf(stderr, "[addjob] Invalid node ID: %d\n", target_node); + return 2; + } + } + int shm_fd = shm_open(SHM_NAME, O_RDWR, 0666); if (shm_fd == -1) { perror("shm_open"); @@ -30,8 +39,12 @@ int main(int argc, char *argv[]) { printf("[addjob] Queue full\n"); } else { strncpy(queue->jobs[queue->tail], argv[1], MAX_PATH); + queue->job_nodes[queue->tail] = target_node; queue->tail = (queue->tail + 1) % MAX_JOBS; - printf("[addjob] Queued job: %s\n", argv[1]); + printf("[addjob] Queued job: %s", argv[1]); + if (target_node != -1) + printf(" for node %d", target_node); + printf("\n"); } pthread_mutex_unlock(&queue->mutex); -- cgit v1.2.3