88{
89 int res;
91 char *slash;
95 char *parse;
96 int protocol = 0;
97 char status_protocol[20];
100 );
101
105 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
107 return 0;
108 } else
110
112
114
115 if ((slash = strchr(dest,
'/')) && (
len = (slash - dest))) {
116 tech = dest;
117 dest = slash + 1;
118
121 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
123 return 0;
124 }
125 }
126
127
130 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
132 return 0;
133 }
134
135
136
138
139 if (res < 0) {
141 res = 0;
142 } else {
144 res = 0;
145 }
146
147 snprintf(status_protocol, sizeof(status_protocol), "%d", protocol);
148 ast_debug(1,
"ast_transfer channel %s TRANSFERSTATUS=%s, TRANSFERSTATUSPROTOCOL=%s\n",
152
153 return res;
154}
#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)