HEX
Server: LiteSpeed
System: Linux server.searchcove.com 4.18.0-513.24.1.lve.2.el8.x86_64 #1 SMP Fri May 24 12:42:50 UTC 2024 x86_64
User: lurax (1083)
PHP: 8.3.30
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/include/dovecot/auth-client-connection.h
#ifndef AUTH_CLIENT_CONNECTION_H
#define AUTH_CLIENT_CONNECTION_H

#include "login-interface.h"
#include "auth-client-interface.h"

#define AUTH_CLIENT_MINOR_VERSION_CHANNEL_BINDING 3

enum auth_client_connection_flags {
	AUTH_CLIENT_CONNECTION_FLAG_LOGIN_REQUESTS = BIT(0),
	AUTH_CLIENT_CONNECTION_FLAG_TOKEN_AUTH = BIT(1),
	AUTH_CLIENT_CONNECTION_FLAG_LEGACY = BIT(2),
};

struct auth_client_connection {
	struct connection conn;
	struct auth *auth;
	struct event *event;
	int refcount;

	unsigned int pid;
	unsigned int connect_uid;
	uint8_t cookie[LOGIN_REQUEST_COOKIE_SIZE];
	struct auth_request_handler *request_handler;

	bool login_requests:1;
	bool version_received:1;
	bool token_auth:1;
	bool handshake_finished:1;
};
void auth_client_connection_create(struct auth *auth, int fd, const char *name,
				   enum auth_client_connection_flags flags);

struct auth_client_connection *
auth_client_connection_lookup(unsigned int pid);

void auth_client_connections_destroy_all(void);

#endif