if(control_client.sin_addr.s_addr != in.sin_addr.s_addr) 
if(control_port && control_client.sin_addr.s_addr != in.sin_addr.s_addr) { close(data_fd); data_fd = -1; 
static int cmd_open(int argc, char **argv){    int sock;    struct sockaddr_in in;    int addrlen;    int port;    if(data_fd != -1)	return send_status(125, "Data connection is already opened");    if(strcasecmp(argv[1], "lsb") == 0)	is_lsb_data = 1;    else if(strcasecmp(argv[1], "msb") == 0)	is_lsb_data = 0;    else	return send_status(502, "OPEN: Invalid argument: %s", argv[1]);    port = data_port;    if((sock = pasv_open(&port)) == -1)	return send_status(511, "Can't open data connection");    addrlen = sizeof(in);    memset(&in, 0, addrlen);    send_status(200, "%d is ready acceptable", port);    alarm(SIG_TIMEOUT_SEC);    data_fd = accept(sock, (struct sockaddr *)&in, &addrlen);    alarm(0);    if(data_fd < 0)    {	send_status(512, "Accept error");	close(sock);	return 0;    }    close(sock);    if(control_client.sin_addr.s_addr != in.sin_addr.s_addr)	return send_status(513, "Security violation:  Address mismatch");    send_status(200, "Ready data connection");    data_buffer_len = 0;    do_sysex(NULL, 0); /* Initialize SysEx buffer */    tmr_reset();    return 0;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/3c12dc1d285bfb1f665ef6022d6a790b50b2ad4d/server_c.c/buggy/interface/server_c.c