ekg2
GIT master
|
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <netdb.h>
#include <string.h>
#include <expat.h>
#include "ekg2.h"
#include "ekg/net.h"
Struktury danych | |
struct | rss_private_t |
struct | rss_item_list |
struct | rss_channel_list |
struct | rss_rss_list |
struct | htmlent_t |
struct | xmlnode_s |
struct | rss_fetch_process_t |
struct | rss_resolver_t |
Definicje | |
#define | feed_private(s) ((s && s->priv) ? ((feed_private_t *) s->priv)->priv_data : NULL) |
#define | RSS_DEFAULT_TIMEOUT 60 |
#define | RSS_ONLY SESSION_MUSTBELONG | SESSION_MUSTHASPRIVATE |
#define | RSS_FLAGS_TARGET RSS_ONLY | COMMAND_ENABLEREQPARAMS | COMMAND_PARAMASTARGET |
#define | rss_convert_string(text, encoding) ekg_recode_to_core_dup(encoding ? encoding : "UTF-8", text) |
#define | EKG_WINACT_RSS EKG_WINACT_IMPORTANT |
Definicje typów | |
typedef struct rss_item_list | rss_item_t |
typedef struct rss_channel_list | rss_channel_t |
typedef struct rss_rss_list | rss_rss_t |
typedef struct xmlnode_s | xmlnode_t |
Wyliczenia | |
enum | rss_proto_t { RSS_PROTO_UNKNOWN = 0, RSS_PROTO_HTTP, RSS_PROTO_HTTPS, RSS_PROTO_FTP, RSS_PROTO_FILE, RSS_PROTO_EXEC } |
Funkcje | |
void | update_timer (session_t *s, const char *name) |
static int | rss_theme_init () |
void | rss_protocol_deinit (void *priv) |
void * | rss_protocol_init (session_t *session) |
void | rss_init () |
void | rss_deinit () |
static int | rss_plugin_destroy () |
static int | rss_validate_uid (void *data, va_list ap) |
static int | rss_session_init (void *data, va_list ap) |
static int | rss_session_deinit (void *data, va_list ap) |
static int | rss_message (void *data, va_list ap) |
__attribute__ ((visibility("default"))) | |
static void | rss_item_free_item (rss_item_t *data) |
static void | rss_items_add (rss_item_t **lista, rss_item_t *new_) |
static void | rss_items_destroy (rss_item_t **lista) |
static int | rss_items_count (rss_item_t *lista) |
static void | rss_channel_free_item (rss_channel_t *data) |
static void | rss_channels_add (rss_channel_t **lista, rss_channel_t *new_) |
static void | rss_channels_destroy (rss_channel_t **lista) |
static int | rss_channels_count (rss_channel_t *lista) |
static void | rsss_free_item (rss_rss_t *data) |
static void | rsss_add (rss_rss_t *new_) |
static void | rsss_destroy (void) |
static void | rss_string_append (rss_rss_t *f, const char *str) |
static void | rss_set_status (const char *uid, int status) |
static void | rss_set_descr (const char *uid, char *descr) |
static void | rss_set_statusdescr (const char *uid, int status, char *descr) |
static rss_item_t * | rss_item_find (rss_channel_t *c, const char *url, const char *title, const char *descr) |
static rss_channel_t * | rss_channel_find (rss_rss_t *f, const char *url, const char *title, const char *descr, const char *lang) |
static rss_rss_t * | rss_rss_find (session_t *s, const char *url) |
static void | rss_fetch_error (rss_rss_t *f, const char *str) |
static void | rss_handle_start (void *data, const char *name, const char **atts) |
static void | rss_handle_end (void *data, const char *name) |
static void | rss_handle_cdata (void *data, const char *text, int len) |
static int | rss_handle_encoding (void *data, const char *name, XML_Encoding *info) |
static void | rss_parsexml_atom (rss_rss_t *f, xmlnode_t *node) |
static void | rss_parsexml_rdf (rss_rss_t *f, xmlnode_t *node) |
static void | rss_parsexml_rss (rss_rss_t *f, xmlnode_t *node) |
static void | xmlnode_free (xmlnode_t *n) |
static void | rss_fetch_process (rss_rss_t *f, const char *str) |
static int | rss_fetch_handler (int type, int fd, const char *watch, void *data) |
static int | rss_fetch_handler_connect (int type, int fd, watch_type_t watch, void *data) |
static int | rss_url_fetch (rss_rss_t *f, int quiet) |
static int | rss_url_fetch_resolver (int type, int fd, watch_type_t watch, void *data) |
static int | rss_command_check (const char *name, const char **params, session_t *session, const char *target, int quiet) |
static int | rss_command_get (const char *name, const char **params, session_t *session, const char *target, int quiet) |
static int | rss_command_show (const char *name, const char **params, session_t *session, const char *target, int quiet) |
static int | rss_command_subscribe (const char *name, const char **params, session_t *session, const char *target, int quiet) |
static int | rss_command_unsubscribe (const char *name, const char **params, session_t *session, const char *target, int quiet) |
static int | rss_userlist_info (void *data, va_list ap) |
gboolean | periodic_check (void *data) |
Zmienne | |
plugin_t | feed_plugin |
static const struct htmlent_t | html_entities [] |
plugin_t | rss_plugin = { .name = "rss", .pclass = PLUGIN_PROTOCOL , .destroy = rss_plugin_destroy, .theme_init = rss_theme_init } |
static plugins_params_t | rss_plugin_vars [] |
static rss_rss_t * | rsss |
#define EKG_WINACT_RSS EKG_WINACT_IMPORTANT |
#define rss_convert_string | ( | text, | |
encoding | |||
) | ekg_recode_to_core_dup(encoding ? encoding : "UTF-8", text) |
#define RSS_DEFAULT_TIMEOUT 60 |
#define RSS_FLAGS_TARGET RSS_ONLY | COMMAND_ENABLEREQPARAMS | COMMAND_PARAMASTARGET |
#define RSS_ONLY SESSION_MUSTBELONG | SESSION_MUSTHASPRIVATE |
typedef struct rss_channel_list rss_channel_t |
typedef struct rss_item_list rss_item_t |
typedef struct rss_rss_list rss_rss_t |
enum rss_proto_t |
__attribute__ | ( | (visibility("default")) | ) |
gboolean periodic_check | ( | void * | data | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void rss_deinit | ( | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void rss_init | ( | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void rss_protocol_deinit | ( | void * | priv | ) |
void * rss_protocol_init | ( | session_t * | session | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void update_timer | ( | session_t * | s, |
const char * | name | ||
) |
|
static |
plugin_t feed_plugin |
|
static |
plugin_t rss_plugin = { .name = "rss", .pclass = PLUGIN_PROTOCOL , .destroy = rss_plugin_destroy, .theme_init = rss_theme_init } |
|
static |
|
static |