Coda Distributed File System
Classes | Macros | Typedefs | Enumerations | Functions
codatunneld.c File Reference
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/param.h>
#include <uv.h>
#include <gnutls/gnutls.h>
#include "codatunnel.private.h"
Include dependency graph for codatunneld.c:

Classes

struct  minicb_udp_req
 
struct  minicb_tcp_req
 
struct  send_to_tls_req
 
struct  async_tls_parms_t
 

Macros

#define MTR_MAXBUFS   6
 
#define GNUTLSERROR(op, retcode)
 
#define CERT_POLL_INTERVAL   30000 /* check server.crt every 30 seconds */
 
#define GNUTLSERROR(op, retcode)
 

Typedefs

typedef struct minicb_udp_req minicb_udp_req_t
 
typedef struct minicb_tcp_req minicb_tcp_req_t
 
typedef struct send_to_tls_req send_to_tls_req_t
 
typedef unsigned int gnutls_init_flags_t
 

Enumerations

enum  peercheck_t { IGNORE , VERIFY }
 

Functions

void drain_outbound_queues (dest_t *d)
 
void outbound_worker_cb (uv_async_t *async)
 
void async_send_codatunnel (uv_async_t *async)
 
void codatunneld (int codatunnel_sockfd, const char *tcp_bindaddr, const char *udp_bindaddr, const char *bind_service, int onlytcp, const char *sslcertdir)
 
void hexdump (char *desc, void *addr, int len)
 

Macro Definition Documentation

◆ CERT_POLL_INTERVAL

#define CERT_POLL_INTERVAL   30000 /* check server.crt every 30 seconds */

◆ GNUTLSERROR [1/2]

#define GNUTLSERROR (   op,
  retcode 
)
Value:
do { \
ERROR("%s(%s) --> %d (%s)\n", op, d->fqdn ? d->fqdn : "", retcode, \
gnutls_strerror(retcode)); \
if (d->state != TCPCLOSING) { \
if (certverify == IGNORE) { \
async_free_dest(d); \
} else { \
d->state = ALLOCATED; \
uv_read_stop((uv_stream_t *)d->tcphandle); \
uv_close((uv_handle_t *)d->tcphandle, free_tcphandle); \
d->tcphandle = NULL; \
} \
} \
uv_rwlock_rdunlock(&credential_load_lock); \
return; \
} while (0)
@ ALLOCATED
Definition: codatunnel.private.h:88
@ TCPCLOSING
Definition: codatunnel.private.h:95
@ IGNORE
Definition: codatunneld.c:140
long retcode[]
Definition: sftp6.c:85
char d
Definition: tdb.c:54
#define NULL
Definition: voltypes.h:44

◆ GNUTLSERROR [2/2]

#define GNUTLSERROR (   op,
  retcode 
)
Value:
{ \
ERROR("%s() --> %d (%s)\n", op, retcode, gnutls_strerror(retcode)); \
assert(0); \
}

◆ MTR_MAXBUFS

#define MTR_MAXBUFS   6

Typedef Documentation

◆ gnutls_init_flags_t

typedef unsigned int gnutls_init_flags_t

◆ minicb_tcp_req_t

◆ minicb_udp_req_t

◆ send_to_tls_req_t

Enumeration Type Documentation

◆ peercheck_t

Enumerator
IGNORE 
VERIFY 

Function Documentation

◆ async_send_codatunnel()

void async_send_codatunnel ( uv_async_t *  async)

◆ codatunneld()

void codatunneld ( int  codatunnel_sockfd,
const char *  tcp_bindaddr,
const char *  udp_bindaddr,
const char *  bind_service,
int  onlytcp,
const char *  sslcertdir 
)

◆ drain_outbound_queues()

void drain_outbound_queues ( dest_t d)

◆ hexdump()

void hexdump ( char *  desc,
void *  addr,
int  len 
)

◆ outbound_worker_cb()

void outbound_worker_cb ( uv_async_t *  async)