linux/drivers/net/wireguard/send.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2015-2019 Jason A. Donenfeld <[email protected]>. All Rights Reserved.
 */

#include "queueing.h"
#include "timers.h"
#include "device.h"
#include "peer.h"
#include "socket.h"
#include "messages.h"
#include "cookie.h"

#include <linux/uio.h>
#include <linux/inetdevice.h>
#include <linux/socket.h>
#include <net/ip_tunnels.h>
#include <net/udp.h>
#include <net/sock.h>

static void wg_packet_send_handshake_initiation(struct wg_peer *peer)
{}

void wg_packet_handshake_send_worker(struct work_struct *work)
{}

void wg_packet_send_queued_handshake_initiation(struct wg_peer *peer,
						bool is_retry)
{}

void wg_packet_send_handshake_response(struct wg_peer *peer)
{}

void wg_packet_send_handshake_cookie(struct wg_device *wg,
				     struct sk_buff *initiating_skb,
				     __le32 sender_index)
{}

static void keep_key_fresh(struct wg_peer *peer)
{}

static unsigned int calculate_skb_padding(struct sk_buff *skb)
{}

static bool encrypt_packet(struct sk_buff *skb, struct noise_keypair *keypair)
{}

void wg_packet_send_keepalive(struct wg_peer *peer)
{}

static void wg_packet_create_data_done(struct wg_peer *peer, struct sk_buff *first)
{}

void wg_packet_tx_worker(struct work_struct *work)
{}

void wg_packet_encrypt_worker(struct work_struct *work)
{}

static void wg_packet_create_data(struct wg_peer *peer, struct sk_buff *first)
{}

void wg_packet_purge_staged_packets(struct wg_peer *peer)
{}

void wg_packet_send_staged_packets(struct wg_peer *peer)
{}