Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Mike Perry
Tor
Commits
85f7d544
Commit
85f7d544
authored
Jul 22, 2010
by
Sebastian Hahn
Browse files
Create dirvote.h
parent
7d4c027f
Changes
11
Hide whitespace changes
Inline
Side-by-side
src/or/config.c
View file @
85f7d544
...
...
@@ -20,6 +20,7 @@
#include
"control.h"
#include
"cpuworker.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"geoip.h"
#include
"rendclient.h"
#include
"rendservice.h"
...
...
src/or/directory.c
View file @
85f7d544
...
...
@@ -12,6 +12,7 @@
#include
"control.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"geoip.h"
#include
"rendclient.h"
#include
"rendcommon.h"
...
...
src/or/dirserv.c
View file @
85f7d544
...
...
@@ -12,6 +12,7 @@
#include
"control.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/dirvote.c
View file @
85f7d544
...
...
@@ -8,6 +8,7 @@
#include
"config.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/dirvote.h
0 → 100644
View file @
85f7d544
/* Copyright (c) 2001 Matej Pfajfar.
* Copyright (c) 2001-2004, Roger Dingledine.
* Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
* Copyright (c) 2007-2010, The Tor Project, Inc. */
/* See LICENSE for licensing information */
/**
* \file dirvote.h
* \brief Header file for dirvote.c.
**/
#ifndef _TOR_DIRVOTE_H
#define _TOR_DIRVOTE_H
/** Lowest allowable value for VoteSeconds. */
#define MIN_VOTE_SECONDS 20
/** Lowest allowable value for DistSeconds. */
#define MIN_DIST_SECONDS 20
/** Smallest allowable voting interval. */
#define MIN_VOTE_INTERVAL 300
/** Precision multiplier for the Bw weights */
#define BW_WEIGHT_SCALE 10000
void
dirvote_free_all
(
void
);
/* vote manipulation */
char
*
networkstatus_compute_consensus
(
smartlist_t
*
votes
,
int
total_authorities
,
crypto_pk_env_t
*
identity_key
,
crypto_pk_env_t
*
signing_key
,
const
char
*
legacy_identity_key_digest
,
crypto_pk_env_t
*
legacy_signing_key
,
consensus_flavor_t
flavor
);
int
networkstatus_add_detached_signatures
(
networkstatus_t
*
target
,
ns_detached_signatures_t
*
sigs
,
const
char
**
msg_out
);
char
*
networkstatus_get_detached_signatures
(
smartlist_t
*
consensuses
);
void
ns_detached_signatures_free
(
ns_detached_signatures_t
*
s
);
/* cert manipulation */
authority_cert_t
*
authority_cert_dup
(
authority_cert_t
*
cert
);
/* vote scheduling */
void
dirvote_get_preferred_voting_intervals
(
vote_timing_t
*
timing_out
);
time_t
dirvote_get_start_of_next_interval
(
time_t
now
,
int
interval
);
void
dirvote_recalculate_timing
(
or_options_t
*
options
,
time_t
now
);
void
dirvote_act
(
or_options_t
*
options
,
time_t
now
);
/* invoked on timers and by outside triggers. */
struct
pending_vote_t
*
dirvote_add_vote
(
const
char
*
vote_body
,
const
char
**
msg_out
,
int
*
status_out
);
int
dirvote_add_signatures
(
const
char
*
detached_signatures_body
,
const
char
*
source
,
const
char
**
msg_out
);
/* Item access */
const
char
*
dirvote_get_pending_consensus
(
consensus_flavor_t
flav
);
const
char
*
dirvote_get_pending_detached_signatures
(
void
);
#define DGV_BY_ID 1
#define DGV_INCLUDE_PENDING 2
#define DGV_INCLUDE_PREVIOUS 4
const
cached_dir_t
*
dirvote_get_vote
(
const
char
*
fp
,
int
flags
);
void
set_routerstatus_from_routerinfo
(
routerstatus_t
*
rs
,
routerinfo_t
*
ri
,
time_t
now
,
int
naming
,
int
listbadexits
,
int
listbaddirs
);
void
router_clear_status_flags
(
routerinfo_t
*
ri
);
networkstatus_t
*
dirserv_generate_networkstatus_vote_obj
(
crypto_pk_env_t
*
private_key
,
authority_cert_t
*
cert
);
microdesc_t
*
dirvote_create_microdescriptor
(
const
routerinfo_t
*
ri
);
ssize_t
dirvote_format_microdesc_vote_line
(
char
*
out
,
size_t
out_len
,
const
microdesc_t
*
md
);
int
vote_routerstatus_find_microdesc_hash
(
char
*
digest256_out
,
const
vote_routerstatus_t
*
vrs
,
int
method
,
digest_algorithm_t
alg
);
document_signature_t
*
voter_get_sig_by_algorithm
(
const
networkstatus_voter_info_t
*
voter
,
digest_algorithm_t
alg
);
#ifdef DIRVOTE_PRIVATE
char
*
format_networkstatus_vote
(
crypto_pk_env_t
*
private_key
,
networkstatus_t
*
v3_ns
);
char
*
dirvote_compute_params
(
smartlist_t
*
votes
);
#endif
#endif
src/or/main.c
View file @
85f7d544
...
...
@@ -25,6 +25,7 @@
#include
"cpuworker.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"dnsserv.h"
#include
"geoip.h"
#include
"rendclient.h"
...
...
src/or/networkstatus.c
View file @
85f7d544
...
...
@@ -17,6 +17,7 @@
#include
"control.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/or.h
View file @
85f7d544
...
...
@@ -3189,35 +3189,6 @@ typedef struct measured_bw_line_t {
/********************************* dirvote.c ************************/
/** Lowest allowable value for VoteSeconds. */
#define MIN_VOTE_SECONDS 20
/** Lowest allowable value for DistSeconds. */
#define MIN_DIST_SECONDS 20
/** Smallest allowable voting interval. */
#define MIN_VOTE_INTERVAL 300
/** Precision multiplier for the Bw weights */
#define BW_WEIGHT_SCALE 10000
void
dirvote_free_all
(
void
);
/* vote manipulation */
char
*
networkstatus_compute_consensus
(
smartlist_t
*
votes
,
int
total_authorities
,
crypto_pk_env_t
*
identity_key
,
crypto_pk_env_t
*
signing_key
,
const
char
*
legacy_identity_key_digest
,
crypto_pk_env_t
*
legacy_signing_key
,
consensus_flavor_t
flavor
);
int
networkstatus_add_detached_signatures
(
networkstatus_t
*
target
,
ns_detached_signatures_t
*
sigs
,
const
char
**
msg_out
);
char
*
networkstatus_get_detached_signatures
(
smartlist_t
*
consensuses
);
void
ns_detached_signatures_free
(
ns_detached_signatures_t
*
s
);
/* cert manipulation */
authority_cert_t
*
authority_cert_dup
(
authority_cert_t
*
cert
);
/** Describes the schedule by which votes should be generated. */
typedef
struct
vote_timing_t
{
int
vote_interval
;
...
...
@@ -3225,52 +3196,6 @@ typedef struct vote_timing_t {
int
vote_delay
;
int
dist_delay
;
}
vote_timing_t
;
/* vote scheduling */
void
dirvote_get_preferred_voting_intervals
(
vote_timing_t
*
timing_out
);
time_t
dirvote_get_start_of_next_interval
(
time_t
now
,
int
interval
);
void
dirvote_recalculate_timing
(
or_options_t
*
options
,
time_t
now
);
void
dirvote_act
(
or_options_t
*
options
,
time_t
now
);
/* invoked on timers and by outside triggers. */
struct
pending_vote_t
*
dirvote_add_vote
(
const
char
*
vote_body
,
const
char
**
msg_out
,
int
*
status_out
);
int
dirvote_add_signatures
(
const
char
*
detached_signatures_body
,
const
char
*
source
,
const
char
**
msg_out
);
/* Item access */
const
char
*
dirvote_get_pending_consensus
(
consensus_flavor_t
flav
);
const
char
*
dirvote_get_pending_detached_signatures
(
void
);
#define DGV_BY_ID 1
#define DGV_INCLUDE_PENDING 2
#define DGV_INCLUDE_PREVIOUS 4
const
cached_dir_t
*
dirvote_get_vote
(
const
char
*
fp
,
int
flags
);
void
set_routerstatus_from_routerinfo
(
routerstatus_t
*
rs
,
routerinfo_t
*
ri
,
time_t
now
,
int
naming
,
int
listbadexits
,
int
listbaddirs
);
void
router_clear_status_flags
(
routerinfo_t
*
ri
);
networkstatus_t
*
dirserv_generate_networkstatus_vote_obj
(
crypto_pk_env_t
*
private_key
,
authority_cert_t
*
cert
);
microdesc_t
*
dirvote_create_microdescriptor
(
const
routerinfo_t
*
ri
);
ssize_t
dirvote_format_microdesc_vote_line
(
char
*
out
,
size_t
out_len
,
const
microdesc_t
*
md
);
int
vote_routerstatus_find_microdesc_hash
(
char
*
digest256_out
,
const
vote_routerstatus_t
*
vrs
,
int
method
,
digest_algorithm_t
alg
);
document_signature_t
*
voter_get_sig_by_algorithm
(
const
networkstatus_voter_info_t
*
voter
,
digest_algorithm_t
alg
);
#ifdef DIRVOTE_PRIVATE
char
*
format_networkstatus_vote
(
crypto_pk_env_t
*
private_key
,
networkstatus_t
*
v3_ns
);
char
*
dirvote_compute_params
(
smartlist_t
*
votes
);
#endif
/********************************* dns.c ***************************/
...
...
src/or/routerlist.c
View file @
85f7d544
...
...
@@ -18,6 +18,7 @@
#include
"control.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"geoip.h"
#include
"rendcommon.h"
#include
"rendservice.h"
...
...
src/or/routerparse.c
View file @
85f7d544
...
...
@@ -12,6 +12,7 @@
#include
"or.h"
#include
"config.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"rendcommon.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/test/test_dir.c
View file @
85f7d544
...
...
@@ -10,6 +10,7 @@
#include
"or.h"
#include
"directory.h"
#include
"dirserv.h"
#include
"dirvote.h"
#include
"router.h"
#include
"routerlist.h"
#include
"test.h"
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment