Undefined behavior when i >= ARRAY_SIZE(connect_reqs).  A pedantic optimizing compiler could optimize this away entirely.  A better check would be something like `ASSERT(req >= connect_reqs && req < connect_reqs + ARRAY_SIZE(connect_reqs))` (and move it to the top.)