My Project
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
Classes | Macros | Functions | Variables
runtime_communication.c File Reference
#include "runtime_communication.h"
#include "communication.h"
#include "logging.h"
#include "rt_controller_messages.h"
#include "stat_msg_handler.h"
#include "epollops.h"
#include "stats.h"
#include "unused_def.h"
#include "dfg_writer.h"
#include "haproxy.h"
#include <signal.h>
#include <sys/epoll.h>
#include <unistd.h>
#include <sys/stat.h>

Go to the source code of this file.

Classes

struct  runtime_endpoint
 

Macros

#define MAX_RUNTIME_ID   32
 
#define MAX_OUTPUT_SOCKS   2
 

Functions

int runtime_fd (unsigned int runtime_id)
 
static int runtime_id (int runtime_fd)
 
int send_to_runtime (unsigned int runtime_id, struct ctrl_runtime_msg_hdr *hdr, void *payload)
 
static int send_add_runtime_msg (unsigned int target_id, int new_rt_id, uint32_t ip, int port)
 
static int remove_runtime_endpoint (int fd)
 
static int add_runtime_endpoint (unsigned int runtime_id, int fd, uint32_t ip, int port)
 
static int process_rt_init_message (ssize_t payload_size, int fd)
 
static int process_rt_stats_message (size_t payload_size, int fd)
 
static int process_rt_message_hdr (struct rt_controller_msg_hdr *hdr, int fd)
 
static void add_output_sock (int fd)
 
static int handle_runtime_communication (int fd, void UNUSED *data)
 
int get_output_listener (int port)
 
int runtime_communication_loop (int listen_port, char *output_file, int output_port)
 

Variables

static struct runtime_endpoint runtime_endpoints [32]
 
static int output_listen_sock = -1
 
static int output_socks [2]
 
static int output_sock_idx = 0
 
static int listen_sock = -1
 

Macro Definition Documentation

#define MAX_OUTPUT_SOCKS   2

Definition at line 216 of file runtime_communication.c.

#define MAX_RUNTIME_ID   32

Definition at line 42 of file runtime_communication.c.

Function Documentation

static void add_output_sock ( int  fd)
static

Definition at line 222 of file runtime_communication.c.

static int add_runtime_endpoint ( unsigned int  runtime_id,
int  fd,
uint32_t  ip,
int  port 
)
static

Definition at line 130 of file runtime_communication.c.

int get_output_listener ( int  port)

Definition at line 273 of file runtime_communication.c.

static int handle_runtime_communication ( int  fd,
void UNUSED data 
)
static

Definition at line 232 of file runtime_communication.c.

static int process_rt_init_message ( ssize_t  payload_size,
int  fd 
)
static

Definition at line 156 of file runtime_communication.c.

static int process_rt_message_hdr ( struct rt_controller_msg_hdr hdr,
int  fd 
)
static

Definition at line 193 of file runtime_communication.c.

static int process_rt_stats_message ( size_t  payload_size,
int  fd 
)
static

Definition at line 177 of file runtime_communication.c.

static int remove_runtime_endpoint ( int  fd)
static

Definition at line 119 of file runtime_communication.c.

int runtime_communication_loop ( int  listen_port,
char *  output_file,
int  output_port 
)

Definition at line 302 of file runtime_communication.c.

int runtime_fd ( unsigned int  runtime_id)

Definition at line 46 of file runtime_communication.c.

static int runtime_id ( int  runtime_fd)
static

Definition at line 53 of file runtime_communication.c.

static int send_add_runtime_msg ( unsigned int  target_id,
int  new_rt_id,
uint32_t  ip,
int  port 
)
static

Definition at line 94 of file runtime_communication.c.

int send_to_runtime ( unsigned int  runtime_id,
struct ctrl_runtime_msg_hdr hdr,
void *  payload 
)

Definition at line 62 of file runtime_communication.c.

Variable Documentation

int listen_sock = -1
static

Definition at line 300 of file runtime_communication.c.

int output_listen_sock = -1
static

Definition at line 218 of file runtime_communication.c.

int output_sock_idx = 0
static

Definition at line 220 of file runtime_communication.c.

int output_socks[2]
static

Definition at line 219 of file runtime_communication.c.

struct runtime_endpoint runtime_endpoints[32]
static

Definition at line 44 of file runtime_communication.c.