示例#1
0
static void listener(void *ctx, HTTPServerRef const server, HTTPConnectionRef const conn) {
    assert(server);
    assert(conn);
    int rc = listener0(ctx, server, conn);
    if(rc < 0) rc = 404;
    if(rc > 0) HTTPConnectionSendStatus(conn, rc);
}
示例#2
0
static void listener(void *ctx, HTTPServerRef const server, HTTPConnectionRef const conn) {
	assert(server);
	assert(conn);
	str_t URI[URI_MAX]; URI[0] = '\0';
	HTTPHeadersRef headers = NULL;
	SLNSessionRef session = NULL;
	int rc = listener0(server, conn, URI, sizeof(URI), &headers, &session);
	if(rc < 0) rc = 404;
	if(rc > 0) HTTPConnectionSendStatus(conn, rc);
	strarg_t const username = SLNSessionGetUsername(session);
	HTTPConnectionLog(conn, URI, username, headers, SERVER_LOG_FILE);
	SLNSessionRelease(&session);
	HTTPHeadersFree(&headers);
}