70 #define path_BIN "/usr/bin/" 71 #define path_LOCAL "/usr/local/bin/" 73 static char *
app =
"ICES";
88 dup2(fd, STDIN_FILENO);
97 execlp(
"ices2",
"ices", filename,
SENTINEL);
99 ast_debug(1,
"Couldn't find ices version 2, attempting to use ices version 1.\n");
103 execlp(
"ices",
"ices", filename,
SENTINEL);
118 char filename[256]=
"";
153 if (((
char *)data)[0] ==
'/')
158 c = strchr(filename,
'|');
174 ast_debug(1,
"Null frame == hangup() detected\n");
181 if (
errno != EAGAIN) {
197 if (!res && oreadformat)
Main Channel structure associated with a channel.
static int ices_exec(struct ast_channel *chan, const char *data)
Asterisk locking-related definitions:
Asterisk main include file. File version handling, generic pbx functions.
Support for translation of data formats. translate.c.
void ast_close_fds_above_n(int n)
Common routine for child processes, to close all fds prior to exec(2)
struct ast_frame * ast_read(struct ast_channel *chan)
Reads a frame.
ast_channel_state
ast_channel states
static int icesencode(char *filename, int fd)
Generic File Format Support. Should be included by clients of the file handling routines. File service providers should instead include mod_format.h.
static int unload_module(void)
int ast_unregister_application(const char *app)
Unregister an application.
#define ast_strlen_zero(foo)
struct ast_format * ast_channel_readformat(struct ast_channel *chan)
static int load_module(void)
#define ast_fd_set_flags(fd, flags)
Set flags on the given file descriptor.
#define ast_debug(level,...)
Log a DEBUG message.
General Asterisk PBX channel definitions.
Asterisk file paths, configured in asterisk.conf.
int ast_set_read_format(struct ast_channel *chan, struct ast_format *format)
Sets read format on channel chan.
Asterisk internal frame definitions.
Core PBX routines and definitions.
int ast_set_priority(int)
We set ourselves to a high priority, that we might pre-empt everything else. If your PBX has heavy ac...
const char * ast_config_AST_CONFIG_DIR
int ast_safe_fork(int stop_reaper)
Common routine to safely fork without a chance of a signal handler firing badly in the child...
int ast_waitfor(struct ast_channel *chan, int ms)
Wait for input on a channel.
void ast_copy_string(char *dst, const char *src, size_t size)
Size-limited null-terminating string copy.
int ast_answer(struct ast_channel *chan)
Answer a channel.
Data structure associated with a single frame of data.
union ast_frame::@263 data
enum ast_frame_type frametype
#define ASTERISK_GPL_KEY
The text the key() function should return.
Asterisk module definitions.
Application convenience functions, designed to give consistent look and feel to Asterisk apps...
AST_MODULE_INFO_STANDARD_DEPRECATED(ASTERISK_GPL_KEY, "Encode and Stream via icecast and ices")
int ast_stopstream(struct ast_channel *c)
Stops a stream.
#define ast_register_application_xml(app, execute)
Register an application using XML documentation.
#define ast_opt_high_priority