1
0
mirror of https://gitlab.xiph.org/xiph/icecast-server.git synced 2024-06-23 06:25:24 +00:00
icecast-server/src/global.h

56 lines
1.3 KiB
C

/* Icecast
*
* This program is distributed under the GNU General Public License, version 2.
* A copy of this license is included with this source.
*
* Copyright 2000-2004, Jack Moffitt <jack@xiph.org,
* Michael Smith <msmith@xiph.org>,
* oddsock <oddsock@xiph.org>,
* Karl Heyes <karl@xiph.org>
* and others (see AUTHORS for details).
*/
#ifndef __GLOBAL_H__
#define __GLOBAL_H__
#define ICECAST_LISTEN_QUEUE 5
#define ICECAST_BOOTING 0 /* Still booting */
#define ICECAST_RUNNING 1 /* Up and running */
#define ICECAST_HALTING 2 /* Shutting down */
#define ICECAST_VERSION_STRING "Icecast " PACKAGE_VERSION
#include "thread/thread.h"
#include "slave.h"
#include "net/sock.h"
typedef struct ice_global_tag
{
sock_t *serversock;
int server_sockets;
int running;
int sources;
int clients;
int schedule_config_reread;
avl_tree *source_tree;
/* for locally defined relays */
struct _relay_server *relays;
/* relays retrieved from master */
struct _relay_server *master_relays;
cond_t shutdown_cond;
} ice_global_t;
extern ice_global_t global;
void global_initialize(void);
void global_shutdown(void);
void global_lock(void);
void global_unlock(void);
#endif /* __GLOBAL_H__ */