#include "emuld_proc.h"
/* definition */
+#define CONFIG_VMODEM 0
#define MAX_CLIENT 10000
#define MAX_EVENTS 10000
#define MAX_GETCNT 10
int recv_data(int event_fd, char** r_databuf, int size);
int parse_val(char *buff, unsigned char data, char *parsbuf);
+#ifdef CONFIG_VMODEM
void set_vm_connect_status(const int v);
bool is_vm_connected(void);
+void* init_vm_connect(void* data);
+#endif
void set_sap_connect_status(const int v);
bool is_sap_connected(void);
-
-void* init_vm_connect(void* data);
void* init_sap_connect(void* data);
+
void systemcall(const char* param);
void recv_from_evdi(evdi_fd fd);
#define SRV_IP "10.0.2.2"
/* global definition */
+#ifdef CONFIG_VMODEM
unsigned short vmodem_port = VMODEM_PORT;
+static int g_vm_connect_status; /* connection status between emuld and vmodem */
+static pthread_mutex_t mutex_vmconnect = PTHREAD_MUTEX_INITIALIZER;
+#endif
+
unsigned short sap_port = SAP_PORT;
+static int g_sap_connect_status;/* connection status between emuld and sap daemon */
+static pthread_mutex_t mutex_sapconnect = PTHREAD_MUTEX_INITIALIZER;
+
unsigned short sensord_port = SENSORD_PORT;
/* global server port number */
int g_svr_port;
-static int g_vm_connect_status; /* connection status between emuld and vmodem */
-static int g_sap_connect_status;/* connection status between emuld and sap daemon */
pthread_t tid[MAX_CLIENT + 1];
int g_epoll_fd;
-static pthread_mutex_t mutex_vmconnect = PTHREAD_MUTEX_INITIALIZER;
-static pthread_mutex_t mutex_sapconnect = PTHREAD_MUTEX_INITIALIZER;
-
struct epoll_event g_events[MAX_EVENTS];
bool exit_flag = false;
}
}
+#ifdef CONFIG_VMODEM
bool is_vm_connected(void)
{
_auto_mutex _(&mutex_vmconnect);
g_vm_connect_status = v;
}
+#endif
bool is_sap_connected(void)
{
}
+#ifdef CONFIG_VMODEM
void* init_vm_connect(void* data)
{
struct sockaddr_in vm_addr;
pthread_exit((void *) 0);
}
+#endif
void* init_sap_connect(void* data)
{
}
+#ifdef CONFIG_VMODEM
void recv_from_vmodem(int fd)
{
printf("recv_from_vmodem\n");
}
}
}
+#endif
void recv_from_sap(int fd)
{
{
msgproc_sap(fd, &ijcmd, false);
}
+#ifdef CONFIG_VMODEM
else if (strncmp(ijcmd.cmd, "telephony", 9) == 0)
{
msgproc_telephony(fd, &ijcmd, false);
}
+#endif
else if (strncmp(ijcmd.cmd, "sensor", 6) == 0)
{
msgproc_sensor(fd, &ijcmd, false);
{
recv_from_evdi(fd_tmp);
}
+#ifdef CONFIG_VMODEM
else if(fd_tmp == g_fd[fdtype_vmodem])
{
recv_from_vmodem(fd_tmp);
}
+#endif
else
{
recv_from_ij(fd_tmp);
int main( int argc , char *argv[])
{
+#ifdef CONFIG_VMODEM
int vm_state;
+#endif
int sap_state;
//if(log_print == 1)
}
LOG("[START] epoll events set success for server");
-
+#ifdef CONFIG_VMODEM
set_vm_connect_status(0);
if(pthread_create(&tid[0], NULL, init_vm_connect, NULL) != 0)
close(g_epoll_fd);
exit(0);
}
-
+#endif
if(pthread_create(&tid[3], NULL, init_sap_connect, NULL) != 0)
{
LOG("pthread create fail!");
exit_flag = true;
+#ifdef CONFIG_VMODEM
if (!is_vm_connected())
{
int status;
{
LOG("mutex_vmconnect is failed to destroy.");
}
-
+#endif
if (!is_sap_connected())
{
int status;
sap_state = pthread_mutex_destroy(&mutex_sapconnect);
if (sap_state != 0)
{
- LOG("mutex_vmconnect is failed to destroy.");
+ LOG("mutex_sapconnect is failed to destroy.");
}
stop_listen();
// event injector message handlers
-
+#ifdef CONFIG_VMODEM
bool msgproc_telephony(const int sockfd, ijcommand* ijcmd, const bool is_evdi)
{
LOG("msgproc_telephony\n");
return true;
}
+#endif
bool msgproc_sap(const int sockfd, ijcommand* ijcmd, const bool is_evdi)
{
sent = send(g_fd[fdtype_sap], &ijcmd->msg, HEADER_SIZE, 0);
if (sent == -1)
{
- perror("vmodem send error");
+ perror("sap send error");
}
LOG("sent to sap daemon = %d, err = %d\n", sent, errno);