src/liblsquic/lsquic_engine.c
/* This is not a general-purpose function.  Only call from engine dtor. */
This is not a general-purpose function.  Only call from engine dtor.
This is not a general - purpose function . Only call from engine dtor .
static void
force_close_conn (lsquic_engine_t *engine, lsquic_conn_t *conn)
{
    assert(engine->flags & ENG_DTOR);
    const enum lsquic_conn_flags flags = conn->cn_flags;
    assert(conn->cn_flags & CONN_REF_FLAGS);
    assert(!(flags & LSCONN_HAS_OUTGOING));  
    assert(!(flags & LSCONN_TICKABLE));    
    assert(!(flags & LSCONN_CLOSING));  
    if (flags & LSCONN_ATTQ)
    {
        lsquic_attq_remove(engine->attq, conn);
        (void) engine_decref_conn(engine, conn, LSCONN_ATTQ);
    }
    if (flags & LSCONN_HASHED)
        remove_conn_from_hash(engine, conn);
}
static void force_close_conn ( lsquic_engine_t * engine , lsquic_conn_t * conn ) { assert ( engine -> flags & ENG_DTOR ) ; const enum lsquic_conn_flags flags = conn -> cn_flags ; assert ( conn -> cn_flags & CONN_REF_FLAGS ) ; assert ( ! ( flags & LSCONN_HAS_OUTGOING ) ) ; assert ( ! ( flags & LSCONN_TICKABLE ) ) ; assert ( ! ( flags & LSCONN_CLOSING ) ) ; if ( flags & LSCONN_ATTQ ) { lsquic_attq_remove ( engine -> attq , conn ) ; ( void ) engine_decref_conn ( engine , conn , LSCONN_ATTQ ) ; } if ( flags & LSCONN_HASHED ) remove_conn_from_hash ( engine , conn ) ; }
This is not a general-purpose function.
This is not a general - purpose function .
/* Should be removed already */ /* Should be removed already */ /* It is in transient queue? */