Hi,<br><br>&gt;Michael Henderson wrote:<br>
&gt; &nbsp; &nbsp;*msg=(char)&quot;Action: Login\r\nUsername: admin\r\nSecret:<br>
&gt; admin\r\nActionID: 1\r\n\r\n&quot;;<br>
<br>&gt;&gt;
Russell Bryant wrote:<br>&gt;&gt;change this to ...<br>
&gt;&gt;<br>&gt;&gt;strncpy(msg, &quot;Action: blahblahblah\r\n\r\n&quot;, sizeof(msg) - 1)<br>
<br><br>I have changed the code as you said with strcpy and now I can connect with Asterisk Manager Interface. I can correctly see that admin is trying to login in from <a href="http://192.168.0.150">192.168.0.150</a>. The problem that I am facing now is after authentication if I try to ping the server the response I get is Response: Error and states that there is no action.<br>
<br>Here is my code:<br><br>#define MAX_MSG_SIZE 3072<br>
#define SERVER_ADDRESS &quot;<a href="http://192.168.0.150/" target="_blank">192.168.0.150</a>&quot;<br>
#define CLIENT_ADDRESS &quot;<a href="http://192.168.0.150/" target="_blank">192.168.0.150</a>&quot;<br>
#define SERVER_PORT 5038<br>
#define &nbsp; &nbsp;CLIENT_PORT 5100<br>
<br>
int main()<br>
{<br>
 &nbsp; int sd;<br>
 &nbsp; struct sockaddr_in serveraddr, clientaddr;<br>
 &nbsp; char msg[MAX_MSG_SIZE];<br>&nbsp; char resp[MAX_MSG_SIZE];<br>
<br>
 &nbsp; bzero((char *) &amp;serveraddr, sizeof(serveraddr));<br>
 &nbsp; serveraddr.sin_family = AF_INET;<br>
 &nbsp; serveraddr.sin_addr.s_addr = inet_addr(SERVER_ADDRESS);<br>
 &nbsp; serveraddr.sin_port = htons(SERVER_PORT);<br>
<br>
 &nbsp; bzero((char *) &amp;clientaddr, sizeof(clientaddr));<br>
 &nbsp; clientaddr.sin_family = AF_INET;<br>
 &nbsp; clientaddr.sin_addr.s_addr = INADDR_ANY;<br>
 &nbsp; clientaddr.sin_port = htons(CLIENT_PORT);<br>
<br>
 &nbsp; sd = socket(AF_INET, SOCK_STREAM, 0);<br>
<br>
 &nbsp; bind(sd,(struct sockaddr *) &amp;clientaddr, sizeof(clientaddr));<br>
<br>
 &nbsp; connect(sd,(struct sockaddr *) &amp;serveraddr, sizeof(serveraddr));<br><br>strcpy(msg,&quot;Action: Login\r\nUsername: admin\r\nSecret: admin\r\n\r\n&quot;);<br>send(sd,msg,strlen(msg)+1,0);<br>recv(sd,resp, sizeof resp,0);<br>
printf(&quot;%s&quot;,resp);<br>strcpy(resp,&quot; &quot;);<br><br>sleep(1);<br><br>strcpy(msg,&quot;Action: Ping\r\n\r\n&quot;);<br>send(sd,msg,strlen(msg)+1,0);<br>recv(sd,resp,sizeof resp,0);<br>printf(&quot;%s&quot;,resp) // In here it prints Response: Error.<br>
close(sd);<br>
<br>return(1);<br>
}<br><br>Now why is it so ? It should return Response: Pong as I am still connected with Asterisk Manager.<br><br>Thank you.<br>