paraslash Paraslash Audio Streaming
About   News   Download   Documentation   Development

Macros | Variables
udp_send.c File Reference

Para_server's udp sender. More...

#include <netinet/in.h>
#include <sys/socket.h>
#include <regex.h>
#include <sys/types.h>
#include <netinet/udp.h>
#include <net/if.h>
#include <arpa/inet.h>
#include <sys/un.h>
#include <netdb.h>
#include <lopsub.h>
#include "server.lsg.h"
#include "para.h"
#include "error.h"
#include "string.h"
#include "afh.h"
#include "net.h"
#include "server.h"
#include "list.h"
#include "sched.h"
#include "send.h"
#include "vss.h"
#include "portable_io.h"
#include "fd.h"
#include "close_on_fork.h"

Macros

#define UDP_MAX_UNREACHABLE_TIME   30
 Time window during which ICMP Destination/Port Unreachable messages are ignored, covering transient receiver problems such as restarting the client, rebooting, reconfiguration, or handover. More...
 

Variables

const struct sender udp_sender
 The UDP sender. More...
 

Detailed Description

Para_server's udp sender.

Macro Definition Documentation

◆ UDP_MAX_UNREACHABLE_TIME

#define UDP_MAX_UNREACHABLE_TIME   30

Time window during which ICMP Destination/Port Unreachable messages are ignored, covering transient receiver problems such as restarting the client, rebooting, reconfiguration, or handover.

Variable Documentation

◆ udp_sender

const struct sender udp_sender
Initial value:
= {
.name = "udp",
.init = udp_send_init,
.shutdown = udp_shutdown,
.shutdown_clients = udp_shutdown_targets,
.resolve_target = udp_resolve_target,
.client_cmds = {
[SENDER_on] = udp_com_on,
[SENDER_off] = udp_com_off,
[SENDER_add] = udp_com_add,
[SENDER_delete] = udp_com_delete,
},
.help = udp_help,
.status = udp_status,
}

The UDP sender.

In contrast to the other senders the UDP sender is active in the sense that it initiates the network connection according to its list of targets rather than passively waiting for clients to connect. Like DCCP streams, UDP streams are always sent FEC-encoded. The UDP sender is the only sender which supports IP multicasting.

SENDER_on
@ SENDER_on
Activate the sender.
Definition: send.h:27
SENDER_off
@ SENDER_off
Deactivate the sender.
Definition: send.h:27
SENDER_add
@ SENDER_add
Add a target (udp only).
Definition: send.h:27
SENDER_delete
@ SENDER_delete
Delete a target (udp only).
Definition: send.h:27