INNER CODE UNIT · C

res

pgbouncer/pgbouncer · src/admin.c:1554

		res = getpeereid(sbuf_socket(&client->sbuf), &peer_uid, &peer_gid);
		if (res >= 0 && peer_uid == getuid()
		    && strcmp("pgbouncer", username) == 0) {
			client->login_user_credentials = admin_pool->db->forced_user_credentials;
			client->own_user = true;
			client->admin_user = true;
			if (!check_db_connection_count(client))
				return false;
			if (cf_log_connections)
				slog_info(client, "pgbouncer access from unix socket");
			return true;
		}
	}

	/*
	 * auth_type=any does not keep original username around,
	 * so username based check has to take place here
	 */

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…