GNUnet 0.28.0-dev.2-27-gc87478450
 
Loading...
Searching...
No Matches
Plugin Struct Reference

Handle for a plugin. More...

Collaboration diagram for Plugin:
[legend]

Data Fields

char * library_name
 Name of the shared library.
 
struct GNUNET_BLOCK_PluginFunctionsapi
 Plugin API.
 
struct GNUNET_GNSRECORD_PluginFunctionsapi
 Plugin API.
 
struct GNUNET_DATACACHE_PluginEnvironmentenv
 Our execution environment.
 
struct GNUNET_CONTAINER_MultiHashMapmap
 Our hash map.
 
struct GNUNET_CONTAINER_Heapheaps [24]
 Heaps sorted by distance.
 
struct GNUNET_PQ_Contextdbh
 Native Postgres database handle.
 
unsigned int num_items
 Number of key-value pairs in the database.
 
bool ready
 Set to true if the DB is ready for action.
 
sqlite3 * dbh
 Handle to the sqlite database.
 
char * fn
 Filename used for the DB.
 
sqlite3_stmt * insert_stmt
 Prepared statement for sqlite_plugin_put.
 
sqlite3_stmt * get_count_stmt
 Prepared statement for sqlite_plugin_get.
 
sqlite3_stmt * get_count_any_stmt
 Prepared statement for sqlite_plugin_get.
 
sqlite3_stmt * get_stmt
 Prepared statement for sqlite_plugin_get.
 
sqlite3_stmt * get_any_stmt
 Prepared statement for sqlite_plugin_get.
 
sqlite3_stmt * del_select_stmt
 Prepared statement for sqlite_plugin_del.
 
sqlite3_stmt * del_expired_stmt
 Prepared statement for sqlite_plugin_del.
 
sqlite3_stmt * del_stmt
 Prepared statement for sqlite_plugin_del.
 
sqlite3_stmt * get_closest_stmt
 Prepared statement for sqlite_plugin_get_closest.
 
struct GNUNET_DATASTORE_PluginEnvironmentenv
 Our execution environment.
 
struct GNUNET_CONTAINER_MultiHashMapkeyvalue
 Mapping from keys to 'struct Value's.
 
struct GNUNET_CONTAINER_Heapby_expiration
 Heap organized by minimum expiration time.
 
struct GNUNET_CONTAINER_Heapby_replication
 Heap organized by maximum replication value.
 
struct ZeroAnonByTypezero_head
 Head of list of arrays containing zero-anonymity values by type.
 
struct ZeroAnonByTypezero_tail
 Tail of list of arrays containing zero-anonymity values by type.
 
unsigned long long size
 Size of all values we're storing.
 
sqlite3_stmt * remove
 Precompiled SQL for remove_key.
 
sqlite3_stmt * delRow
 Precompiled SQL for deletion.
 
sqlite3_stmt * update
 Precompiled SQL for update.
 
sqlite3_stmt * maxRepl
 Get maximum repl value in database.
 
sqlite3_stmt * updRepl
 Precompiled SQL for replication decrement.
 
sqlite3_stmt * selRepl
 Precompiled SQL for replication selection.
 
sqlite3_stmt * selExpi
 Precompiled SQL for expiration selection.
 
sqlite3_stmt * selZeroAnon
 Precompiled SQL for expiration selection.
 
sqlite3_stmt * insertContent
 Precompiled SQL for insertion.
 
sqlite3_stmt * get [8]
 Precompiled SQL for selection.
 
int drop_on_shutdown
 Should the database be dropped on shutdown?
 
const struct GNUNET_CONFIGURATION_Handlecfg
 Our configuration.
 
struct GNUNET_CONTAINER_MultiHashMaphm
 HashMap.
 
sqlite3_stmt * cache_block
 Precompiled SQL for caching a block.
 
sqlite3_stmt * delete_block
 Precompiled SQL for deleting an older block.
 
sqlite3_stmt * lookup_block
 Precompiled SQL for looking up a block.
 
sqlite3_stmt * expire_blocks
 Precompiled SQL for removing expired blocks.
 
sqlite3_stmt * store_records
 Precompiled SQL to store records.
 
sqlite3_stmt * delete_records
 Precompiled SQL to deltete existing records.
 
sqlite3_stmt * iterate_zone
 Precompiled SQL for iterate records within a zone.
 
sqlite3_stmt * iterate_all_zones
 Precompiled SQL for iterate all records within all zones.
 
sqlite3_stmt * zone_to_name
 Precompiled SQL to for reverse lookup based on PKEY.
 
sqlite3_stmt * lookup_label
 Precompiled SQL to lookup records based on label.
 
sqlite3_stmt * editor_hint_clear
 Precompiled SQL to clear editor hint.
 
sqlite3_stmt * insert_peerstoredata
 Precompiled SQL for inserting into peerstoredata.
 
sqlite3_stmt * select_peerstoredata
 Precompiled SQL for selecting from peerstoredata.
 
sqlite3_stmt * select_peerstoredata_by_pid
 Precompiled SQL for selecting from peerstoredata.
 
sqlite3_stmt * select_peerstoredata_by_key
 Precompiled SQL for selecting from peerstoredata.
 
sqlite3_stmt * select_peerstoredata_by_all
 Precompiled SQL for selecting from peerstoredata.
 
sqlite3_stmt * expire_peerstoredata
 Precompiled SQL for deleting expired records from peerstoredata.
 
sqlite3_stmt * delete_peerstoredata
 Precompiled SQL for deleting records with given key.
 
struct GNUNET_DHTU_Source src
 Our "source" address.
 
struct GNUNET_DHTU_PluginEnvironmentenv
 Callbacks into the DHT.
 
struct GNUNET_PEERSTORE_Handlepeerstore
 Handle to the PEERSTORE service.
 
struct GNUNET_CORE_Handlecore
 Handle to the CORE service.
 
struct GNUNET_TRANSPORT_ApplicationHandletransport
 Handle to Transport service.
 
struct GNUNET_NSE_Handlense
 Handle to the NSE service.
 
struct GNUNET_PEERSTORE_Monitorpeerstore_notify
 Our peerstore notification context.
 
struct GNUNET_PILS_Handlepils
 Handle to the PILS service.
 
struct GNUNET_DHTU_Sourcesrc_head
 Head of sources where we receive traffic.
 
struct GNUNET_DHTU_Sourcesrc_tail
 Tail of sources where we receive traffic.
 
struct GNUNET_DHTU_Targetdst_head
 Head of destinations that are active.
 
struct GNUNET_DHTU_Targetdst_tail
 Tail of destinations that are active.
 
struct GNUNET_CONTAINER_MultiHashMapdsts
 Map from hashes of sockaddrs to targets.
 
struct GNUNET_SCHEDULER_Taskscan_task
 Task that scans for IP address changes.
 
struct GNUNET_SCHEDULER_Taskread_task
 Task that reads incoming UDP packets.
 
char * port
 Port we bind to.
 
struct GNUNET_NETWORK_Handlesock
 My UDP socket.
 
struct GNUNET_PeerIdentity my_id
 My identity.
 
unsigned int scan_generation
 How often have we scanned for IPs?
 
uint16_t port16
 Port as a 16-bit value.
 
struct GNUNET_RECLAIM_AttributePluginFunctionsapi
 Plugin API.
 
struct GNUNET_RECLAIM_CredentialPluginFunctionsapi
 Plugin API.
 

Detailed Description

Handle for a plugin.

struct returned by the initialization function of the plugin

Closure for all plugin functions.

Context for all functions in this plugin.

Definition at line 37 of file block.c.

Field Documentation

◆ library_name

char * Plugin::library_name

Name of the shared library.

Name of the plugin.

Definition at line 42 of file block.c.

Referenced by add_plugin(), add_plugin(), add_plugin(), and add_plugin().

◆ api [1/4]

◆ api [2/4]

struct GNUNET_GNSRECORD_PluginFunctions* Plugin::api

Plugin API.

Definition at line 48 of file gnsrecord.c.

◆ env [1/3]

struct GNUNET_DHTU_PluginEnvironment * Plugin::env

Our execution environment.

Callbacks into the DHT.

Definition at line 46 of file plugin_datacache_heap.c.

◆ map

struct GNUNET_CONTAINER_MultiHashMap* Plugin::map

Our hash map.

Definition at line 51 of file plugin_datacache_heap.c.

◆ heaps

struct GNUNET_CONTAINER_Heap* Plugin::heaps[24]

Heaps sorted by distance.

Definition at line 56 of file plugin_datacache_heap.c.

◆ dbh [1/2]

sqlite3 * Plugin::dbh

Native Postgres database handle.

Native SQLite database handle.

Postgres database handle.

Definition at line 51 of file plugin_datacache_postgres.c.

Referenced by libgnunet_plugin_datacache_sqlite_init().

◆ num_items

unsigned int Plugin::num_items

Number of key-value pairs in the database.

Definition at line 56 of file plugin_datacache_postgres.c.

◆ ready

bool Plugin::ready

Set to true if the DB is ready for action.

Statements prepared, we are ready to go if true.

Database is prepared and ready.

Definition at line 61 of file plugin_datacache_postgres.c.

◆ dbh [2/2]

sqlite3* Plugin::dbh

Handle to the sqlite database.

Native SQLite database handle.

Definition at line 57 of file plugin_datacache_sqlite.c.

◆ fn

char * Plugin::fn

Filename used for the DB.

Database filename.

Definition at line 62 of file plugin_datacache_sqlite.c.

Referenced by libgnunet_plugin_datacache_sqlite_init(), and libgnunet_plugin_datastore_sqlite_done().

◆ insert_stmt

sqlite3_stmt* Plugin::insert_stmt

Prepared statement for sqlite_plugin_put.

Definition at line 67 of file plugin_datacache_sqlite.c.

◆ get_count_stmt

sqlite3_stmt* Plugin::get_count_stmt

Prepared statement for sqlite_plugin_get.

Definition at line 72 of file plugin_datacache_sqlite.c.

◆ get_count_any_stmt

sqlite3_stmt* Plugin::get_count_any_stmt

Prepared statement for sqlite_plugin_get.

Definition at line 77 of file plugin_datacache_sqlite.c.

◆ get_stmt

sqlite3_stmt* Plugin::get_stmt

Prepared statement for sqlite_plugin_get.

Definition at line 82 of file plugin_datacache_sqlite.c.

◆ get_any_stmt

sqlite3_stmt* Plugin::get_any_stmt

Prepared statement for sqlite_plugin_get.

Definition at line 87 of file plugin_datacache_sqlite.c.

◆ del_select_stmt

sqlite3_stmt* Plugin::del_select_stmt

Prepared statement for sqlite_plugin_del.

Definition at line 92 of file plugin_datacache_sqlite.c.

◆ del_expired_stmt

sqlite3_stmt* Plugin::del_expired_stmt

Prepared statement for sqlite_plugin_del.

Definition at line 97 of file plugin_datacache_sqlite.c.

◆ del_stmt

sqlite3_stmt* Plugin::del_stmt

Prepared statement for sqlite_plugin_del.

Definition at line 102 of file plugin_datacache_sqlite.c.

◆ get_closest_stmt

sqlite3_stmt* Plugin::get_closest_stmt

Prepared statement for sqlite_plugin_get_closest.

Definition at line 107 of file plugin_datacache_sqlite.c.

◆ env [2/3]

Our execution environment.

Definition at line 142 of file plugin_datastore_heap.c.

◆ keyvalue

struct GNUNET_CONTAINER_MultiHashMap* Plugin::keyvalue

Mapping from keys to 'struct Value's.

Definition at line 147 of file plugin_datastore_heap.c.

◆ by_expiration

struct GNUNET_CONTAINER_Heap* Plugin::by_expiration

Heap organized by minimum expiration time.

Definition at line 152 of file plugin_datastore_heap.c.

◆ by_replication

struct GNUNET_CONTAINER_Heap* Plugin::by_replication

Heap organized by maximum replication value.

Definition at line 157 of file plugin_datastore_heap.c.

◆ zero_head

struct ZeroAnonByType* Plugin::zero_head

Head of list of arrays containing zero-anonymity values by type.

Definition at line 162 of file plugin_datastore_heap.c.

◆ zero_tail

struct ZeroAnonByType* Plugin::zero_tail

Tail of list of arrays containing zero-anonymity values by type.

Definition at line 167 of file plugin_datastore_heap.c.

◆ size

unsigned long long Plugin::size

Size of all values we're storing.

Definition at line 172 of file plugin_datastore_heap.c.

◆ remove

sqlite3_stmt* Plugin::remove

Precompiled SQL for remove_key.

Definition at line 118 of file plugin_datastore_sqlite.c.

◆ delRow

sqlite3_stmt* Plugin::delRow

Precompiled SQL for deletion.

Definition at line 123 of file plugin_datastore_sqlite.c.

◆ update

sqlite3_stmt* Plugin::update

Precompiled SQL for update.

Definition at line 128 of file plugin_datastore_sqlite.c.

◆ maxRepl

sqlite3_stmt* Plugin::maxRepl

Get maximum repl value in database.

Definition at line 133 of file plugin_datastore_sqlite.c.

◆ updRepl

sqlite3_stmt* Plugin::updRepl

Precompiled SQL for replication decrement.

Definition at line 138 of file plugin_datastore_sqlite.c.

◆ selRepl

sqlite3_stmt* Plugin::selRepl

Precompiled SQL for replication selection.

Definition at line 143 of file plugin_datastore_sqlite.c.

◆ selExpi

sqlite3_stmt* Plugin::selExpi

Precompiled SQL for expiration selection.

Definition at line 148 of file plugin_datastore_sqlite.c.

◆ selZeroAnon

sqlite3_stmt* Plugin::selZeroAnon

Precompiled SQL for expiration selection.

Definition at line 153 of file plugin_datastore_sqlite.c.

◆ insertContent

sqlite3_stmt* Plugin::insertContent

Precompiled SQL for insertion.

Definition at line 158 of file plugin_datastore_sqlite.c.

◆ get

sqlite3_stmt* Plugin::get[8]

Precompiled SQL for selection.

Definition at line 163 of file plugin_datastore_sqlite.c.

◆ drop_on_shutdown

int Plugin::drop_on_shutdown

Should the database be dropped on shutdown?

Definition at line 168 of file plugin_datastore_sqlite.c.

◆ cfg

const struct GNUNET_CONFIGURATION_Handle * Plugin::cfg

Our configuration.

Configuration handle.

Definition at line 37 of file plugin_namecache_flat.c.

◆ hm

struct GNUNET_CONTAINER_MultiHashMap * Plugin::hm

HashMap.

Definition at line 47 of file plugin_namecache_flat.c.

◆ cache_block

sqlite3_stmt* Plugin::cache_block

Precompiled SQL for caching a block.

Definition at line 82 of file plugin_namecache_sqlite.c.

◆ delete_block

sqlite3_stmt* Plugin::delete_block

Precompiled SQL for deleting an older block.

Definition at line 87 of file plugin_namecache_sqlite.c.

◆ lookup_block

sqlite3_stmt* Plugin::lookup_block

Precompiled SQL for looking up a block.

Definition at line 92 of file plugin_namecache_sqlite.c.

◆ expire_blocks

sqlite3_stmt* Plugin::expire_blocks

Precompiled SQL for removing expired blocks.

Definition at line 97 of file plugin_namecache_sqlite.c.

◆ store_records

sqlite3_stmt* Plugin::store_records

Precompiled SQL to store records.

Definition at line 89 of file plugin_namestore_sqlite.c.

◆ delete_records

sqlite3_stmt* Plugin::delete_records

Precompiled SQL to deltete existing records.

Definition at line 94 of file plugin_namestore_sqlite.c.

◆ iterate_zone

sqlite3_stmt* Plugin::iterate_zone

Precompiled SQL for iterate records within a zone.

Definition at line 99 of file plugin_namestore_sqlite.c.

◆ iterate_all_zones

sqlite3_stmt* Plugin::iterate_all_zones

Precompiled SQL for iterate all records within all zones.

Definition at line 104 of file plugin_namestore_sqlite.c.

◆ zone_to_name

sqlite3_stmt* Plugin::zone_to_name

Precompiled SQL to for reverse lookup based on PKEY.

Definition at line 109 of file plugin_namestore_sqlite.c.

◆ lookup_label

sqlite3_stmt* Plugin::lookup_label

Precompiled SQL to lookup records based on label.

Definition at line 114 of file plugin_namestore_sqlite.c.

◆ editor_hint_clear

sqlite3_stmt* Plugin::editor_hint_clear

Precompiled SQL to clear editor hint.

Definition at line 119 of file plugin_namestore_sqlite.c.

◆ insert_peerstoredata

sqlite3_stmt* Plugin::insert_peerstoredata

Precompiled SQL for inserting into peerstoredata.

Definition at line 86 of file plugin_peerstore_sqlite.c.

◆ select_peerstoredata

sqlite3_stmt* Plugin::select_peerstoredata

Precompiled SQL for selecting from peerstoredata.

Definition at line 91 of file plugin_peerstore_sqlite.c.

◆ select_peerstoredata_by_pid

sqlite3_stmt* Plugin::select_peerstoredata_by_pid

Precompiled SQL for selecting from peerstoredata.

Definition at line 96 of file plugin_peerstore_sqlite.c.

◆ select_peerstoredata_by_key

sqlite3_stmt* Plugin::select_peerstoredata_by_key

Precompiled SQL for selecting from peerstoredata.

Definition at line 101 of file plugin_peerstore_sqlite.c.

◆ select_peerstoredata_by_all

sqlite3_stmt* Plugin::select_peerstoredata_by_all

Precompiled SQL for selecting from peerstoredata.

Definition at line 106 of file plugin_peerstore_sqlite.c.

◆ expire_peerstoredata

sqlite3_stmt* Plugin::expire_peerstoredata

Precompiled SQL for deleting expired records from peerstoredata.

Definition at line 112 of file plugin_peerstore_sqlite.c.

◆ delete_peerstoredata

sqlite3_stmt* Plugin::delete_peerstoredata

Precompiled SQL for deleting records with given key.

Definition at line 118 of file plugin_peerstore_sqlite.c.

◆ src

struct GNUNET_DHTU_Source Plugin::src

Our "source" address.

Traditional CORE API does not tell us which source it is, so they are all identical.

Definition at line 136 of file plugin_dhtu_gnunet.c.

◆ env [3/3]

struct GNUNET_DHTU_PluginEnvironment* Plugin::env

Callbacks into the DHT.

Definition at line 141 of file plugin_dhtu_gnunet.c.

◆ peerstore

struct GNUNET_PEERSTORE_Handle* Plugin::peerstore

Handle to the PEERSTORE service.

Definition at line 146 of file plugin_dhtu_gnunet.c.

◆ core

struct GNUNET_CORE_Handle* Plugin::core

Handle to the CORE service.

Definition at line 151 of file plugin_dhtu_gnunet.c.

◆ transport

struct GNUNET_TRANSPORT_ApplicationHandle* Plugin::transport

Handle to Transport service.

Definition at line 156 of file plugin_dhtu_gnunet.c.

◆ nse

struct GNUNET_NSE_Handle* Plugin::nse

Handle to the NSE service.

Definition at line 161 of file plugin_dhtu_gnunet.c.

◆ peerstore_notify

struct GNUNET_PEERSTORE_Monitor* Plugin::peerstore_notify

Our peerstore notification context.

We use notification to instantly learn about new peers as they are discovered.

Definition at line 167 of file plugin_dhtu_gnunet.c.

◆ pils

struct GNUNET_PILS_Handle* Plugin::pils

Handle to the PILS service.

Definition at line 172 of file plugin_dhtu_gnunet.c.

◆ src_head

struct GNUNET_DHTU_Source* Plugin::src_head

Head of sources where we receive traffic.

Definition at line 177 of file plugin_dhtu_ip.c.

◆ src_tail

struct GNUNET_DHTU_Source* Plugin::src_tail

Tail of sources where we receive traffic.

Definition at line 182 of file plugin_dhtu_ip.c.

◆ dst_head

struct GNUNET_DHTU_Target* Plugin::dst_head

Head of destinations that are active.

Sorted by last use, with latest used at the head.

Definition at line 188 of file plugin_dhtu_ip.c.

◆ dst_tail

struct GNUNET_DHTU_Target* Plugin::dst_tail

Tail of destinations that are active.

Definition at line 193 of file plugin_dhtu_ip.c.

◆ dsts

struct GNUNET_CONTAINER_MultiHashMap* Plugin::dsts

Map from hashes of sockaddrs to targets.

Definition at line 198 of file plugin_dhtu_ip.c.

◆ scan_task

struct GNUNET_SCHEDULER_Task* Plugin::scan_task

Task that scans for IP address changes.

Definition at line 203 of file plugin_dhtu_ip.c.

◆ read_task

struct GNUNET_SCHEDULER_Task* Plugin::read_task

Task that reads incoming UDP packets.

Definition at line 208 of file plugin_dhtu_ip.c.

◆ port

char* Plugin::port

Port we bind to.

Definition at line 213 of file plugin_dhtu_ip.c.

◆ sock

struct GNUNET_NETWORK_Handle* Plugin::sock

My UDP socket.

Definition at line 218 of file plugin_dhtu_ip.c.

Referenced by DHTU_ip_init().

◆ my_id

struct GNUNET_PeerIdentity Plugin::my_id

My identity.

Definition at line 223 of file plugin_dhtu_ip.c.

◆ scan_generation

unsigned int Plugin::scan_generation

How often have we scanned for IPs?

Definition at line 228 of file plugin_dhtu_ip.c.

◆ port16

uint16_t Plugin::port16

Port as a 16-bit value.

Definition at line 233 of file plugin_dhtu_ip.c.

◆ api [3/4]

Plugin API.

Definition at line 45 of file reclaim_attribute.c.

◆ api [4/4]

Plugin API.

Definition at line 44 of file reclaim_credential.c.


The documentation for this struct was generated from the following files: