91{
92 int res;
94 char *slash;
98 char *parse;
99 int protocol = 0;
100 char status_protocol[20];
103 );
104
108 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
110 return 0;
111 } else
113
115
117
118 if ((slash = strchr(dest,
'/')) && (
len = (slash - dest))) {
119 tech = dest;
120 dest = slash + 1;
121
124 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
126 return 0;
127 }
128 }
129
130
133 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
135 return 0;
136 }
137
138
139
141
142 if (res < 0) {
144 res = 0;
145 } else {
147 res = 0;
148 }
149
150 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
151 ast_debug(1,
"ast_transfer channel %s TRANSFERSTATUS=%s, TRANSFERSTATUSPROTOCOL=%s\n",
155
156 return res;
157}
#define ast_strdupa(s)
duplicate a string in memory from the stack
static int transfer(void *data)
const char * ast_channel_name(const struct ast_channel *chan)
int ast_transfer_protocol(struct ast_channel *chan, char *dest, int *protocol)
Transfer a channel (if supported) receieve protocol result.
const struct ast_channel_tech * ast_channel_tech(const struct ast_channel *chan)
static int len(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t buflen)
#define AST_APP_ARG(name)
Define an application argument.
#define AST_DECLARE_APP_ARGS(name, arglist)
Declare a structure to hold an application's arguments.
#define AST_STANDARD_APP_ARGS(args, parse)
Performs the 'standard' argument separation process for an application.
#define ast_debug(level,...)
Log a DEBUG message.
int pbx_builtin_setvar_helper(struct ast_channel *chan, const char *name, const char *value)
Add a variable to the channel variable stack, removing the most recently set value for the same name.
static force_inline int attribute_pure ast_strlen_zero(const char *s)