#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <netdb.h>
#include <sys/un.h>
#include <unistd.h>
#include <sys/time.h>
#include <pthread.h>
#include <stdlib.h>
#include "include/acc.h"
#include "include/connection.h"
#include "include/data_structures.h"
#include "include/macros.h"
#include "include/mc_error.h"
#include "include/mc_platform.h"
#include "include/message.h"
#include "include/mtp_http.h"
#include "include/xml_parser.h"
#include "include/fipa_acl_envelope.h"
Go to the source code of this file.
Defines | |
#define | BACKLOG 10 |
Functions | |
acc_p | acc_Initialize (struct mc_platform_s *mc_platform) |
int | acc_Destroy (acc_p acc) |
void * | acc_MessageHandlerThread (void *arg) |
void * | acc_Thread (void *arg) |
void | acc_Start (mc_platform_p mc_platform) |
void * | listen_Thread (void *arg) |
#define BACKLOG 10 |
int acc_Destroy | ( | acc_p | acc | ) |
acc_p acc_Initialize | ( | struct mc_platform_s * | mc_platform | ) |
Definition at line 66 of file acc.c.
References COND_INIT, COND_T, MUTEX_INIT, and MUTEX_T.
Referenced by mc_platform_Initialize().
void* acc_MessageHandlerThread | ( | void * | arg | ) |
Definition at line 94 of file acc.c.
References agent_Initialize(), mc_platform_s::agent_queue, agent_s::agent_status, AGENT_UPDATE, mc_platform_s::ams, mc_platform_s::asm_message_queue, CANCEL, COND_BROADCAST, COND_SIGNAL, COND_WAIT, agent_s::datastate, ENCRYPTED_DATA, ENCRYPTION_INITIALIZE, FIPA_ACL, message_s::from_address, mc_platform_s::giant, mc_platform_s::giant_cond, mc_platform_s::giant_lock, agent_s::lock, MC_AGENT_NEUTRAL, mc_platform, MC_RECV_AGENT, MC_RECV_MESSAGE, MC_RECV_RETURN, mc_platform_s::MC_signal, mc_platform_s::MC_signal_cond, mc_platform_s::MC_signal_lock, message_Destroy(), mc_platform_s::message_queue, message_Send(), message_s::message_type, MOBILE_AGENT, MUTEX_LOCK, MUTEX_UNLOCK, N_UNDRSTD, agent_s::name, agent_datastate_s::persistent, QUER_IF, QUER_REF, mc_platform_s::quit, mc_platform_s::quit_lock, RELAY, REQUEST, REQUEST_ENCRYPTION_INITIALIZE, RETURN_MSG, SUBSCRIBE, message_s::to_address, and WARN.
Referenced by acc_Start().
void acc_Start | ( | mc_platform_p | mc_platform | ) |
Definition at line 542 of file acc.c.
References mc_platform_s::acc, acc_MessageHandlerThread(), acc_Thread(), listen_Thread(), MC_THREAD_ACC, mc_platform_s::stack_size, and THREAD_CREATE.
Referenced by mc_platform_Initialize().
void* acc_Thread | ( | void * | arg | ) |
Definition at line 329 of file acc.c.
References agent_mailbox_Post(), mc_platform_s::agent_queue, AGENT_UPDATE, mc_platform_s::asm_message_queue, CANCEL, COND_BROADCAST, COND_WAIT, connection_Destroy(), mc_platform_s::connection_queue, mtp_http_s::content, mtp_http_content_s::data, ENCRYPTED_DATA, ENCRYPTION_INITIALIZE, FIPA_ACL, fipa_acl_envelope_Destroy(), fipa_acl_envelope_New(), fipa_acl_message_Destroy(), fipa_acl_message_New(), fipa_acl_Parse(), fipa_agent_identifier_set_s::fipa_agent_identifiers, fipa_envelope_Parse(), fipa_message_string_Destroy(), fipa_message_string_New(), mc_platform_s::giant, mc_platform_s::giant_cond, mc_platform_s::giant_lock, mtp_http_s::http_performative, HTTP_POST, HTTP_PUT, agent_s::mailbox, mc_platform, MC_RECV_CONNECTION, mc_platform_s::MC_signal, mc_platform_s::MC_signal_cond, mc_platform_s::MC_signal_lock, fipa_message_string_s::message, message_s::message_body, message_Destroy(), message_New(), mtp_http_s::message_parts, mc_platform_s::message_queue, message_s::message_type, message_xml_parse(), MOBILE_AGENT, mtp_http_Destroy(), mtp_http_InitializeFromConnection(), mtp_http_New(), MUTEX_LOCK, MUTEX_UNLOCK, MXML_NO_CALLBACK, mxmlLoadString(), N_UNDRSTD, fipa_agent_identifier_s::name, fipa_agent_identifier_set_s::num, fipa_acl_envelope_s::num_params, fipa_acl_envelope_s::params, fipa_message_string_s::parse, QUER_IF, QUER_REF, mc_platform_s::quit, mc_platform_s::quit_lock, RELAY, REQUEST, REQUEST_ENCRYPTION_INITIALIZE, RETURN_MSG, SUBSCRIBE, mtp_http_s::target, fipa_acl_Param_s::to, WARN, and message_s::xml_root.
Referenced by acc_Start().
void* listen_Thread | ( | void * | arg | ) |
Definition at line 586 of file acc.c.
References mc_platform_s::acc, BACKLOG, CHECK_NULL, COND_BROADCAST, mc_platform_s::connection_queue, mc_platform, MUTEX_LOCK, MUTEX_UNLOCK, and mc_platform_s::port.
Referenced by acc_Start().