// Various routines that deal with parsing the configuration file.
+#include <arpa/inet.h>
+#include <netinet/in.h>
#include <stddef.h>
#include <string>
#include <vector>
};
struct StreamConfig {
- std::string stream_id;
+ std::string url; // As seen by the client.
std::string src; // Can be empty.
size_t backlog_size;
int mark_pool; // -1 for none.
+ enum { STREAM_ENCODING_RAW = 0, STREAM_ENCODING_METACUBE } encoding;
+};
+
+struct UDPStreamConfig {
+ sockaddr_in6 dst;
+ std::string src; // Can be empty.
+ int mark_pool; // -1 for none.
};
struct AcceptorConfig {
int num_servers;
std::vector<MarkPoolConfig> mark_pools;
std::vector<StreamConfig> streams;
+ std::vector<UDPStreamConfig> udpstreams;
std::vector<AcceptorConfig> acceptors;
std::vector<LogConfig> log_destinations;