server/mpm/event/event.c:2071: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 64):unsigned64 by call to `ap_update_child_status_from_indexes`.

server/mpm/event/event.c:2070:5: Assignment
2068.     ap_scoreboard_image->servers[process_slot][thread_slot].pid = ap_my_pid;
2069.     ap_scoreboard_image->servers[process_slot][thread_slot].tid = apr_os_thread_current();
2070.     ap_scoreboard_image->servers[process_slot][thread_slot].generation = retained->my_generation;
          ^
2071.     ap_update_child_status_from_indexes(process_slot, thread_slot,
2072.                                         SERVER_STARTING, NULL);

server/mpm/event/event.c:2071:5: Call
2069.     ap_scoreboard_image->servers[process_slot][thread_slot].tid = apr_os_thread_current();
2070.     ap_scoreboard_image->servers[process_slot][thread_slot].generation = retained->my_generation;
2071.     ap_update_child_status_from_indexes(process_slot, thread_slot,
          ^
2072.                                         SERVER_STARTING, NULL);
2073. 

server/scoreboard.c:513:1: Parameter `r->the_request->strlen`
  511. }
  512. 
  513. AP_DECLARE(int) ap_update_child_status_from_indexes(int child_num,
       ^
  514.                                                     int thread_num,
  515.                                                     int status,

server/scoreboard.c:522:12: Call
  520.     }
  521. 
  522.     return update_child_status_internal(child_num, thread_num, status,
                  ^
  523.                                         r ? r->connection : NULL,
  524.                                         r);

server/scoreboard.c:449:1: Parameter `r->the_request->strlen`
    447. }
    448. 
    449. static int update_child_status_internal(int child_num,
         ^
    450.                                         int thread_num,
    451.                                         int status,

server/scoreboard.c:495:13: Call
    493.                 apr_cpystrn(ws->client, client, sizeof(ws->client));
    494.             }
    495.             copy_request(ws->request, sizeof(ws->request), r);
                     ^
    496.             if (r->server) {
    497.                 apr_snprintf(ws->vhost, sizeof(ws->vhost), "%s:%d",

server/scoreboard.c:413:1: <LHS trace>
411. }
412. 
413. static void copy_request(char *rbuf, apr_size_t rbuflen, request_rec *r)
     ^
414. {
415.     char *p;

server/scoreboard.c:413:1: Parameter `rbuflen`
      411. }
      412. 
      413. static void copy_request(char *rbuf, apr_size_t rbuflen, request_rec *r)
           ^
      414. {
      415.     char *p;

server/scoreboard.c:413:1: <RHS trace>
411. }
412. 
413. static void copy_request(char *rbuf, apr_size_t rbuflen, request_rec *r)
     ^
414. {
415.     char *p;

server/scoreboard.c:413:1: Parameter `rbuflen`
      411. }
      412. 
      413. static void copy_request(char *rbuf, apr_size_t rbuflen, request_rec *r)
           ^
      414. {
      415.     char *p;

server/scoreboard.c:444:13: Binary operation: ([0, +oo] - 64):unsigned64 by call to `ap_update_child_status_from_indexes` 
      442.         }
      443.         else {
      444.             apr_cpystrn(rbuf, p+(slen-rbuflen+1), rbuflen);
                       ^
      445.         }
      446.     }

static void copy_request(char *rbuf, apr_size_t rbuflen, request_rec *r)
{
    char *p;
    if (r->the_request == NULL) {
        apr_cpystrn(rbuf, "NULL", rbuflen);
        return;
    }
    if (r->parsed_uri.password == NULL) {
        p = r->the_request;
    }
    else {
        p = apr_pstrcat(r->pool, r->method, " ",
                        apr_uri_unparse(r->pool, &r->parsed_uri,
                        APR_URI_UNP_OMITPASSWORD),
                        r->assbackwards ? NULL : " ", r->protocol, NULL);
    }
    if (!ap_mod_status_reqtail) {
        apr_cpystrn(rbuf, p, rbuflen);
    }
    else {
        apr_size_t slen = strlen(p);
        if (slen < rbuflen) {
            apr_cpystrn(rbuf, p, rbuflen);
        }
        else {
            apr_cpystrn(rbuf, p+(slen-rbuflen+1), rbuflen);
        }
    }
}
['static void *APR_THREAD_FUNC worker_thread(apr_thread_t * thd, void *dummy)\n{\n    proc_info *ti = dummy;\n    int process_slot = ti->pid;\n    int thread_slot = ti->tid;\n    apr_status_t rv;\n    int is_idle = 0;\n    free(ti);\n    ap_scoreboard_image->servers[process_slot][thread_slot].pid = ap_my_pid;\n    ap_scoreboard_image->servers[process_slot][thread_slot].tid = apr_os_thread_current();\n    ap_scoreboard_image->servers[process_slot][thread_slot].generation = retained->my_generation;\n    ap_update_child_status_from_indexes(process_slot, thread_slot,\n                                        SERVER_STARTING, NULL);\n    while (!workers_may_exit) {\n        apr_socket_t *csd = NULL;\n        event_conn_state_t *cs;\n        timer_event_t *te = NULL;\n        apr_pool_t *ptrans;\n        if (!is_idle) {\n            rv = ap_queue_info_set_idle(worker_queue_info, NULL);\n            if (rv != APR_SUCCESS) {\n                ap_log_error(APLOG_MARK, APLOG_EMERG, rv, ap_server_conf,\n                             "ap_queue_info_set_idle failed. Attempting to "\n                             "shutdown process gracefully.");\n                signal_threads(ST_GRACEFUL);\n                break;\n            }\n            is_idle = 1;\n        }\n        ap_update_child_status_from_indexes(process_slot, thread_slot,\n                                            dying ? SERVER_GRACEFUL : SERVER_READY, NULL);\n      worker_pop:\n        if (workers_may_exit) {\n            break;\n        }\n        rv = ap_queue_pop_something(worker_queue, &csd, &cs, &ptrans, &te);\n        if (rv != APR_SUCCESS) {\n            if (APR_STATUS_IS_EOF(rv)) {\n                break;\n            }\n            else if (APR_STATUS_IS_EINTR(rv)) {\n                goto worker_pop;\n            }\n            else if (!workers_may_exit) {\n                ap_log_error(APLOG_MARK, APLOG_CRIT, rv, ap_server_conf,\n                             "ap_queue_pop failed");\n            }\n            continue;\n        }\n        if (te != NULL) {\n            te->cbfunc(te->baton);\n            {\n                apr_thread_mutex_lock(g_timer_skiplist_mtx);\n                APR_RING_INSERT_TAIL(&timer_free_ring, te, timer_event_t, link);\n                apr_thread_mutex_unlock(g_timer_skiplist_mtx);\n            }\n        }\n        else {\n            is_idle = 0;\n            worker_sockets[thread_slot] = csd;\n            process_socket(thd, ptrans, csd, cs, process_slot, thread_slot);\n            worker_sockets[thread_slot] = NULL;\n        }\n    }\n    ap_update_child_status_from_indexes(process_slot, thread_slot,\n                                        dying ? SERVER_DEAD :\n                                        SERVER_GRACEFUL,\n                                        (request_rec *) NULL);\n    apr_thread_exit(thd, APR_SUCCESS);\n    return NULL;\n}', 'AP_DECLARE(int) ap_update_child_status_from_indexes(int child_num,\n                                                    int thread_num,\n                                                    int status,\n                                                    request_rec *r)\n{\n    if (child_num < 0) {\n        return -1;\n    }\n    return update_child_status_internal(child_num, thread_num, status,\n                                        r ? r->connection : NULL,\n                                        r);\n}', 'static int update_child_status_internal(int child_num,\n                                        int thread_num,\n                                        int status,\n                                        conn_rec *c,\n                                        request_rec *r)\n{\n    int old_status;\n    worker_score *ws;\n    process_score *ps;\n    int mpm_generation;\n    ws = &ap_scoreboard_image->servers[child_num][thread_num];\n    old_status = ws->status;\n    ws->status = status;\n    ps = &ap_scoreboard_image->parent[child_num];\n    if (status == SERVER_READY\n        && old_status == SERVER_STARTING) {\n        ws->thread_num = child_num * thread_limit + thread_num;\n        ap_mpm_query(AP_MPMQ_GENERATION, &mpm_generation);\n        ps->generation = mpm_generation;\n    }\n    if (ap_extended_status) {\n        if (status == SERVER_READY || status == SERVER_DEAD) {\n            if (status == SERVER_DEAD) {\n                ws->my_access_count = 0L;\n                ws->my_bytes_served = 0L;\n            }\n            ws->conn_count = 0;\n            ws->conn_bytes = 0;\n            ws->last_used = apr_time_now();\n        }\n        if (r) {\n            const char *client = ap_get_remote_host(c, r->per_dir_config,\n                                 REMOTE_NOLOOKUP, NULL);\n            if (!client || !strcmp(client, c->client_ip)) {\n                apr_cpystrn(ws->client, r->useragent_ip, sizeof(ws->client));\n            }\n            else {\n                apr_cpystrn(ws->client, client, sizeof(ws->client));\n            }\n            copy_request(ws->request, sizeof(ws->request), r);\n            if (r->server) {\n                apr_snprintf(ws->vhost, sizeof(ws->vhost), "%s:%d",\n                             r->server->server_hostname,\n                             r->connection->local_addr->port);\n            }\n        }\n        else if (c) {\n            apr_cpystrn(ws->client, ap_get_remote_host(c, NULL,\n                        REMOTE_NOLOOKUP, NULL), sizeof(ws->client));\n            ws->request[0]=\'\\0\';\n            ws->vhost[0]=\'\\0\';\n        }\n    }\n    return old_status;\n}', 'static void copy_request(char *rbuf, apr_size_t rbuflen, request_rec *r)\n{\n    char *p;\n    if (r->the_request == NULL) {\n        apr_cpystrn(rbuf, "NULL", rbuflen);\n        return;\n    }\n    if (r->parsed_uri.password == NULL) {\n        p = r->the_request;\n    }\n    else {\n        p = apr_pstrcat(r->pool, r->method, " ",\n                        apr_uri_unparse(r->pool, &r->parsed_uri,\n                        APR_URI_UNP_OMITPASSWORD),\n                        r->assbackwards ? NULL : " ", r->protocol, NULL);\n    }\n    if (!ap_mod_status_reqtail) {\n        apr_cpystrn(rbuf, p, rbuflen);\n    }\n    else {\n        apr_size_t slen = strlen(p);\n        if (slen < rbuflen) {\n            apr_cpystrn(rbuf, p, rbuflen);\n        }\n        else {\n            apr_cpystrn(rbuf, p+(slen-rbuflen+1), rbuflen);\n        }\n    }\n}']