#include "dump1090.h"
Go to the source code of this file.
Macros | |
#define | MODES_CONTENT_TYPE_CSS "text/css;charset=utf-8" |
#define | MODES_CONTENT_TYPE_HTML "text/html;charset=utf-8" |
#define | MODES_CONTENT_TYPE_JS "application/javascript;charset=utf-8" |
#define | MODES_CONTENT_TYPE_JSON "application/json;charset=utf-8" |
Functions | |
char * | aircraftsToJson (int *len) |
int | decodeBinMessage (struct client *c, char *p) |
int | decodeHexMessage (struct client *c, char *hex) |
int | handleHTTPRequest (struct client *c, char *p) |
int | hexDigitVal (int c) |
void | modesAcceptClients (void) |
void | modesFreeClient (int fd) |
void | modesInitNet (void) |
void | modesQueueOutput (struct modesMessage *mm) |
void | modesReadFromClient (struct client *c, char *sep, int(*handler)(struct client *, char *)) |
void | modesReadFromClients (void) |
void | modesSendAllClients (int service, void *msg, int len) |
void | modesSendBeastOutput (struct modesMessage *mm) |
void | modesSendRawOutput (struct modesMessage *mm) |
void | modesSendSBSOutput (struct modesMessage *mm) |
#define MODES_CONTENT_TYPE_CSS "text/css;charset=utf-8" |
Definition at line 624 of file net_io.c.
Referenced by handleHTTPRequest().
#define MODES_CONTENT_TYPE_HTML "text/html;charset=utf-8" |
Definition at line 623 of file net_io.c.
Referenced by handleHTTPRequest().
#define MODES_CONTENT_TYPE_JS "application/javascript;charset=utf-8" |
Definition at line 626 of file net_io.c.
Referenced by handleHTTPRequest().
#define MODES_CONTENT_TYPE_JSON "application/json;charset=utf-8" |
Definition at line 625 of file net_io.c.
Referenced by handleHTTPRequest().
char* aircraftsToJson | ( | int * | len | ) |
Definition at line 561 of file net_io.c.
References RdGeoCeLDFFitter::a, aircraft::addr, aircraft::altitude, aircraft::bFlags, aircraft::flight, aircraft::lat, aircraft::lon, aircraft::messages, aircraft::modeA, MODEAC_MSG_FLAG, aircraft::modeACflags, Modes, MODES_ACFLAGS_HEADING_VALID, MODES_ACFLAGS_LATLON_VALID, aircraft::next, G4StationSimulatorOG::p, aircraft::seen, aircraft::speed, aircraft::track, and aircraft::vert_rate.
Referenced by handleHTTPRequest().
int decodeBinMessage | ( | struct client * | c, |
char * | p | ||
) |
Definition at line 425 of file net_io.c.
References decodeModeAMessage(), decodeModesMessage(), MODEAC_MSG_BYTES, Modes, MODES_LONG_MSG_BYTES, MODES_NOTUSED, MODES_SHORT_MSG_BYTES, modesMessage::remote, modesMessage::signalLevel, and useModesMessage().
Referenced by main(), and modesReadFromClients().
int decodeHexMessage | ( | struct client * | c, |
char * | hex | ||
) |
Definition at line 484 of file net_io.c.
References decodeModeAMessage(), decodeModesMessage(), hexDigitVal(), UnivRecNS::high, UnivRecNS::low, MODEAC_MSG_BYTES, Modes, MODES_LONG_MSG_BYTES, MODES_NOTUSED, MODES_SHORT_MSG_BYTES, modesMessage::msg, modesMessage::remote, modesMessage::signalLevel, and useModesMessage().
Referenced by modesReadFromClients().
int handleHTTPRequest | ( | struct client * | c, |
char * | p | ||
) |
Definition at line 635 of file net_io.c.
References aircraftsToJson(), client::buf, client::fd, fd, HTMLPATH, Modes, MODES_CONTENT_TYPE_CSS, MODES_CONTENT_TYPE_HTML, MODES_CONTENT_TYPE_JS, MODES_CONTENT_TYPE_JSON, MODES_DEBUG_NET, and G4StationSimulatorOG::p.
Referenced by modesReadFromClients().
int hexDigitVal | ( | int | c | ) |
Definition at line 464 of file net_io.c.
Referenced by decodeHexMessage().
void modesAcceptClients | ( | void | ) |
Definition at line 86 of file net_io.c.
References anetNonBlock(), anetSetSendBuffer(), anetTcpAccept(), client::buflen, RdGeoCeLDFFitter::c, client::fd, fd, Modes, MODES_DEBUG_NET, MODES_NET_MAX_FD, MODES_NET_SNDBUF_SIZE, and client::service.
Referenced by modesReadFromClients().
void modesFreeClient | ( | int | fd | ) |
Definition at line 132 of file net_io.c.
References fd, Modes, MODES_DEBUG_NET, and MODES_NET_MAX_FD.
Referenced by modesReadFromClient(), and modesSendAllClients().
void modesInitNet | ( | void | ) |
Definition at line 49 of file net_io.c.
References anetNonBlock(), anetTcpServer(), exit, Modes, and utl::s.
Referenced by main().
void modesQueueOutput | ( | struct modesMessage * | mm | ) |
Definition at line 407 of file net_io.c.
References Modes, modesSendBeastOutput(), modesSendRawOutput(), and modesSendSBSOutput().
Referenced by useModesMessage().
Definition at line 759 of file net_io.c.
References client::buf, client::buflen, client::fd, MODEAC_MSG_BYTES, Modes, MODES_CLIENT_BUF_SIZE, MODES_LONG_MSG_BYTES, MODES_SHORT_MSG_BYTES, modesFreeClient(), utl::s, and client::service.
Referenced by main(), and modesReadFromClients().
void modesReadFromClients | ( | void | ) |
Definition at line 860 of file net_io.c.
References RdGeoCeLDFFitter::c, decodeBinMessage(), decodeHexMessage(), handleHTTPRequest(), Modes, modesAcceptClients(), modesReadFromClient(), and client::service.
Referenced by backgroundTasks().
void modesSendAllClients | ( | int | service, |
void * | msg, | ||
int | len | ||
) |
Definition at line 165 of file net_io.c.
References RdGeoCeLDFFitter::c, Modes, modesFreeClient(), and client::service.
Referenced by detectModeS(), modesSendBeastOutput(), modesSendRawOutput(), and modesSendSBSOutput().
void modesSendBeastOutput | ( | struct modesMessage * | mm | ) |
Definition at line 184 of file net_io.c.
References MODEAC_MSG_BYTES, Modes, MODES_LONG_MSG_BYTES, MODES_SHORT_MSG_BYTES, modesSendAllClients(), modesMessage::msg, modesMessage::msgbits, G4StationSimulatorOG::p, modesMessage::signalLevel, and modesMessage::timestampMsg.
Referenced by modesQueueOutput().
void modesSendRawOutput | ( | struct modesMessage * | mm | ) |
Definition at line 222 of file net_io.c.
References Modes, modesSendAllClients(), modesMessage::msg, modesMessage::msgbits, G4StationSimulatorOG::p, and modesMessage::timestampMsg.
Referenced by modesQueueOutput().
void modesSendSBSOutput | ( | struct modesMessage * | mm | ) |
Definition at line 261 of file net_io.c.
References modesMessage::addr, modesMessage::altitude, modesMessage::bFlags, modesMessage::fLat, modesMessage::flight, modesMessage::fLon, modesMessage::fs, modesMessage::heading, modesMessage::mesub, modesMessage::metype, modesMessage::modeA, Modes, MODES_ACFLAGS_ALTITUDE_VALID, MODES_ACFLAGS_AOG, MODES_ACFLAGS_AOG_GROUND, MODES_ACFLAGS_AOG_VALID, MODES_ACFLAGS_CALLSIGN_VALID, MODES_ACFLAGS_FS_VALID, MODES_ACFLAGS_LATLON_VALID, MODES_ACFLAGS_NSEWSPD_VALID, MODES_ACFLAGS_SQUAWK_VALID, MODES_ACFLAGS_VERTRATE_VALID, modesSendAllClients(), modesMessage::msgtype, G4StationSimulatorOG::p, modesMessage::timestampMsg, modesMessage::velocity, and modesMessage::vert_rate.
Referenced by modesQueueOutput().