ELinks 0.18.0
gemini.c File Reference
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
#include <sys/types.h>
#include "elinks.h"
#include "cache/cache.h"
#include "config/options.h"
#include "cookies/cookies.h"
#include "intl/charsets.h"
#include "intl/libintl.h"
#include "main/module.h"
#include "network/connection.h"
#include "network/progress.h"
#include "network/socket.h"
#include "osdep/ascii.h"
#include "osdep/osdep.h"
#include "osdep/sysname.h"
#include "protocol/date.h"
#include "protocol/gemini/codes.h"
#include "protocol/gemini/dialog.h"
#include "protocol/gemini/gemini.h"
#include "protocol/header.h"
#include "protocol/uri.h"
#include "session/session.h"
#include "terminal/terminal.h"
#include "util/base64.h"
#include "util/conv.h"
#include "util/memory.h"
#include "util/string.h"
Include dependency graph for gemini.c:

Functions

static void done_gemini (struct module *)
 
static void gemini_got_header (struct socket *socket, struct read_buffer *rb)
 
static void gemini_end_request (struct connection *conn, struct connection_state state, int notrunc)
 
static void gemini_send_header (struct socket *)
 
void gemini_protocol_handler (struct connection *conn)
 
static void done_gemini_connection (struct connection *conn)
 
static struct gemini_connection_infoinit_gemini_connection_info (struct connection *conn)
 
static void read_gemini_data (struct socket *socket, struct read_buffer *rb)
 
static void read_more_gemini_data (struct connection *conn, struct read_buffer *rb, int already_got_anything)
 
static void read_gemini_data_done (struct connection *conn)
 
static int read_normal_gemini_data (struct connection *conn, struct read_buffer *rb)
 
static int get_header (struct read_buffer *rb)
 
static int get_gemini_code (struct read_buffer *rb, int *code)
 

Variables

struct module gemini_protocol_module
 

Function Documentation

◆ done_gemini()

static void done_gemini ( struct module * mod)
static

◆ done_gemini_connection()

static void done_gemini_connection ( struct connection * conn)
static

◆ gemini_end_request()

static void gemini_end_request ( struct connection * conn,
struct connection_state state,
int notrunc )
static

◆ gemini_got_header()

static void gemini_got_header ( struct socket * socket,
struct read_buffer * rb )
static

◆ gemini_protocol_handler()

void gemini_protocol_handler ( struct connection * conn)

◆ gemini_send_header()

static void gemini_send_header ( struct socket * socket)
static

◆ get_gemini_code()

static int get_gemini_code ( struct read_buffer * rb,
int * code )
static

◆ get_header()

static int get_header ( struct read_buffer * rb)
static

◆ init_gemini_connection_info()

static struct gemini_connection_info * init_gemini_connection_info ( struct connection * conn)
static

◆ read_gemini_data()

static void read_gemini_data ( struct socket * socket,
struct read_buffer * rb )
static

◆ read_gemini_data_done()

static void read_gemini_data_done ( struct connection * conn)
static

◆ read_more_gemini_data()

static void read_more_gemini_data ( struct connection * conn,
struct read_buffer * rb,
int already_got_anything )
static

◆ read_normal_gemini_data()

static int read_normal_gemini_data ( struct connection * conn,
struct read_buffer * rb )
static

Variable Documentation

◆ gemini_protocol_module

struct module gemini_protocol_module
Initial value:
N_("Gemini"),
)
#define NULL
Definition explodename.c:35
static void done_gemini(struct module *)
Definition gemini.c:60
#define N_(msg)
Definition libintl.h:25
#define struct_module(name, options, hooks, submods, data, init, done, getname)
Definition module.h:47