GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still https://gitweb.torproject.org/ https://git.torproject.org/ and git-rw.torproject.org.

Commit 4a0cd795 authored by Samanta Navarro's avatar Samanta Navarro Committed by David Goulet

Fix typos.

Typos found with codespell.

Please keep in mind that this should have impact on actual code
and must be carefully evaluated:

src/core/or/lttng_circuit.inc
-    ctf_enum_value("CONTROLER", CIRCUIT_PURPOSE_CONTROLLER)
+    ctf_enum_value("CONTROLLER", CIRCUIT_PURPOSE_CONTROLLER)
parent e2d3c9c5
Pipeline #1664 canceled with stage
......@@ -96,7 +96,7 @@ variables:
- if [ "$CHUTNEY" = yes ]; then git clone --depth 1 https://git.torproject.org/chutney.git ; export CHUTNEY_PATH="$(pwd)/chutney"; fi
- if [ "$TRACING" = yes ]; then apt install liblttng-ust-dev; fi
# Minmal check on debian: just make, make check.
# Minimal check on debian: just make, make check.
#
debian-minimal:
image: debian:stable
......
......@@ -1501,7 +1501,7 @@ dnl These cflags add bunches of branches, and we haven't been able to
dnl persuade ourselves that they're suitable for code that needs to be
dnl constant time.
AC_SUBST(CFLAGS_BUGTRAP)
dnl These cflags are variant ones sutable for code that needs to be
dnl These cflags are variant ones suitable for code that needs to be
dnl constant-time.
AC_SUBST(CFLAGS_CONSTTIME)
......
......@@ -6,7 +6,7 @@
"""
exitlist -- Given a Tor directory on stdin, lists the Tor servers
that accept connections to given addreses.
that accept connections to given addresses.
example usage:
......
......@@ -124,7 +124,7 @@ the module calls. Modules which call fewer other modules are better targets.
Strive to change the C API as little as possible.
We are currently targetting Rust stable. (See `CodingStandardsRust.md` for more
We are currently targeting Rust stable. (See `CodingStandardsRust.md` for more
details.)
It is on our TODO list to try to cultivate good
......
......@@ -102,7 +102,7 @@ they do not apply to security-related patch release versions.
4. Open tickets for connecting the new branches to various other
places. See section 2 above for a list of affected locations.
5. Stop running practracker on maintainence and release branches:
5. Stop running practracker on maintenance and release branches:
* Remove "check-best-practices" from the check-local Makefile
target in the maint-x.y.z branch only.
* Delete the file scripts/maint/practracker/.enable_practracker_in_hooks
......
......@@ -47,7 +47,7 @@ A trace event in tor has the following standard format:
tor_trace(subsystem, event_name, args...);
```
The `subsystem` parameter is the name of the subsytem the trace event is in.
The `subsystem` parameter is the name of the subsystem the trace event is in.
For example that could be "scheduler" or "vote" or "hs". The idea is to add
some context to the event so when we collect them we know where it's coming
from.
......@@ -135,7 +135,7 @@ This is pretty easy. Let's say you want to add a trace event in
#include "lib/trace/events.h"
```
Then, the `tor_trace()` macro can be used with the specific format detailled
Then, the `tor_trace()` macro can be used with the specific format detailed
before in a previous section. As an example:
```c
......
......@@ -13,7 +13,7 @@ opened on your host at the same time.
FreeBSD
-------
Tune the followind sysctl(8) variables:
Tune the following sysctl(8) variables:
* kern.maxfiles - maximum allowed file descriptors (for entire system)
* kern.maxfilesperproc - maximum file descriptors one process is allowed
to use
......
......@@ -54,7 +54,7 @@ AC_DEFUN([AC_PC_FROM_UCONTEXT],
else
AC_CHECK_HEADERS(sys/ucontext.h) # ucontext on OS X 10.6 (at least)
fi
AC_CHECK_HEADERS(cygwin/signal.h) # ucontext on cywgin
AC_CHECK_HEADERS(cygwin/signal.h) # ucontext on cygwin
AC_MSG_CHECKING([how to access the program counter from a struct ucontext])
pc_fields=" uc_mcontext.gregs[[REG_PC]]" # Solaris x86 (32 + 64 bit)
pc_fields="$pc_fields uc_mcontext.gregs[[REG_EIP]]" # Linux (i386)
......
......@@ -53,7 +53,7 @@ fi[]dnl
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
#
# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
# only at the first occurence in configure.ac, so if the first place
# only at the first occurrence in configure.ac, so if the first place
# it's called might be skipped (such as if it is within an "if", you
# have to call PKG_CHECK_EXISTS manually
# --------------------------------------------------------------
......
......@@ -461,7 +461,7 @@ fi
if [[ "${STEM}" = "yes" ]]; then
start_section "Stem"
if [[ "${TOR_VER_AT_LEAST_044}" = 'yes' ]]; then
# XXXX This shold probably be part some test-stem make target.
# XXXX This should probably be part of some test-stem make target.
if runcmd timelimit -p -t 520 -s USR1 -T 30 -S ABRT \
python3 "${STEM_PATH}/run_tests.py" \
--tor src/app/tor \
......
......@@ -494,7 +494,7 @@ set_tor_github_pr_fetch_config
fetch_remote "tor-github"
# GitLab remote
printf "%s Seting up remote %s\\n" "$MARKER" "${BYEL}tor-gitlab${CNRM}"
printf "%s Setting up remote %s\\n" "$MARKER" "${BYEL}tor-gitlab${CNRM}"
add_remote "tor-gitlab" "$GITLAB_PULL"
set_remote_push "tor-gitlab" "$GITLAB_PUSH"
# Add custom fetch for MRs
......
......@@ -3,7 +3,7 @@
# To install this script, copy it to .git/hooks/pre-commit in local copy of
# tor git repo and make sure it has permission to execute.
#
# This is pre-commit git hook script that prevents commiting your changeset if
# This is pre-commit git hook script that prevents committing your changeset if
# it fails our code formatting, changelog entry formatting, module include
# rules, etc...
......
......@@ -70,7 +70,7 @@ LINE_OBVIOUSNESS_LIMIT = 4
# Maximum line width. This includes a terminating newline character.
#
# (This is the maximum before encoding, so that if the the operating system
# uses multiple characers to encode newline, that's still okay.)
# uses multiple characters to encode newline, that's still okay.)
LINE_WIDTH=80
class Problem(Exception):
......
......@@ -11,7 +11,7 @@
#
"""
This program uses a set of plugable filters to inspect and transform
This program uses a set of pluggable filters to inspect and transform
our C code.
"""
......
......@@ -153,7 +153,7 @@ This is an automated commit, generated by this command:
if no_verify:
msg += """
It was generated with --no-verify, so it probably breaks some commit hooks.
The commiter should be sure to fix them up in a subsequent commit.
The committer should be sure to fix them up in a subsequent commit.
"""
return msg
......
......@@ -1518,7 +1518,7 @@ compute_group_readable_flag(const char *datadir,
* the datadirectory */
return datadir_gr;
} else {
/* The directores are different, so we default to "not group-readable" */
/* The directories are different, so we default to "not group-readable" */
return 0;
}
}
......@@ -5872,9 +5872,9 @@ warn_client_dns_cache(const char *option, int disabling)
return;
warn_deprecated_option(option,
"Client-side DNS cacheing enables a wide variety of route-"
"Client-side DNS caching enables a wide variety of route-"
"capture attacks. If a single bad exit node lies to you about "
"an IP address, cacheing that address would make you visit "
"an IP address, caching that address would make you visit "
"an address of the attacker's choice every time you connected "
"to your destination.");
}
......@@ -7009,7 +7009,7 @@ options_get_dir_fname2_suffix,(const or_options_t *options,
return fname;
}
/** Check wether the data directory has a private subdirectory
/** Check whether the data directory has a private subdirectory
* <b>subdir</b>. If not, try to create it. Return 0 on success,
* -1 otherwise. */
int
......
......@@ -1041,7 +1041,7 @@ struct or_options_t {
/** Maximum allowed burst of circuits. Reaching that value, the address is
* detected as malicious and a defense might be used. */
int DoSCircuitCreationBurst;
/** When an address is marked as malicous, what defense should be used
/** When an address is marked as malicious, what defense should be used
* against it. See the dos_cc_defense_type_t enum. */
int DoSCircuitCreationDefenseType;
/** For how much time (in seconds) the defense is applicable for a malicious
......
......@@ -21,7 +21,7 @@ struct config_suite_t;
struct or_state_t {
uint32_t magic_;
/** The time at which we next plan to write the state to the disk. Equal to
* TIME_MAX if there are no savable changes, 0 if there are changes that
* TIME_MAX if there are no saveable changes, 0 if there are changes that
* should be saved right away. */
time_t next_write;
......
......@@ -17,7 +17,7 @@
/** Method used to resolved an address. In other words, how was the address
* discovered by tor. */
typedef enum {
/* Default value. Indiate that no method found the address. */
/* Default value. Indicate that no method found the address. */
RESOLVED_ADDR_NONE = 0,
/* Found from the "Address" configuration option. */
RESOLVED_ADDR_CONFIGURED = 1,
......
......@@ -88,7 +88,7 @@
## yourself to make this work.
#ORPort 443 NoListen
#ORPort 127.0.0.1:9090 NoAdvertise
## If you want to listen on IPv6 your numeric address must be explictly
## If you want to listen on IPv6 your numeric address must be explicitly
## between square brackets as follows. You must also listen on IPv4.
#ORPort [2001:DB8::1]:9050
......
......@@ -88,7 +88,7 @@
## yourself to make this work.
#ORPort 443 NoListen
#ORPort 127.0.0.1:9090 NoAdvertise
## If you want to listen on IPv6 your numeric address must be explictly
## If you want to listen on IPv6 your numeric address must be explicitly
## between square brackets as follows. You must also listen on IPv4.
#ORPort [2001:DB8::1]:9050
......
......@@ -246,7 +246,7 @@ estimated_usec_for_onionskins(uint32_t n_requests, uint16_t onionskin_type)
if (onionskin_type > MAX_ONION_HANDSHAKE_TYPE) /* should be impossible */
return 1000 * (uint64_t)n_requests;
if (PREDICT_UNLIKELY(onionskins_n_processed[onionskin_type] < 100)) {
/* Until we have 100 data points, just asssume everything takes 1 msec. */
/* Until we have 100 data points, just assume everything takes 1 msec. */
return 1000 * (uint64_t)n_requests;
} else {
/* This can't overflow: we'll never have more than 500000 onionskins
......
......@@ -1475,7 +1475,7 @@ get_my_roles(const or_options_t *options)
/* We also consider tor to have the role of a client if the ControlPort is
* set because a lot of things can be done over the control port which
* requires tor to have basic functionnalities. */
* requires tor to have basic functionalities. */
int is_client = options_any_client_port_set(options) ||
options->ControlPort_set ||
options->OwningControllerFD != UINT64_MAX;
......
......@@ -72,7 +72,7 @@ note_user_activity(time_t now)
}
/**
* Change the time at which "user activitiy" was last seen to <b>now</b>.
* Change the time at which "user activity" was last seen to <b>now</b>.
*
* Unlike note_user_actity, this function sets the time without checking
* whether it is in the past, and without causing any rescan of periodic events
......
......@@ -90,7 +90,7 @@ periodic_event_dispatch(mainloop_event_t *ev, void *data)
next_interval = r;
} else {
/* no action was taken, it is likely a precondition failed,
* we should reschedule for next second incase the precondition
* we should reschedule for next second in case the precondition
* passes then */
next_interval = 1;
}
......
......@@ -32,7 +32,7 @@
*
* NOTE: For now, the separation between channels and specialized channels
* (like channeltls) is not that well defined. So the channeltls layer calls
* channel_process_cell() which originally comes from the connection subsytem.
* channel_process_cell() which originally comes from the connection subsystem.
* This should be hopefully be fixed with #23993.
*
* For *outbound* cells, the entry point is: channel_write_packed_cell().
......@@ -2387,7 +2387,7 @@ channel_is_better(channel_t *a, channel_t *b)
* Get a channel to extend a circuit.
*
* Given the desired relay identity, pick a suitable channel to extend a
* circuit to the target IPv4 or IPv6 address requsted by the client. Search
* circuit to the target IPv4 or IPv6 address requested by the client. Search
* for an existing channel for the requested endpoint. Make sure the channel
* is usable for new circuits, and matches one of the target addresses.
*
......
......@@ -7,7 +7,7 @@
/**
* \file circuitbuild.c
*
* \brief Implements the details of building circuits (by chosing paths,
* \brief Implements the details of building circuits (by choosing paths,
* constructing/sending create/extend cells, and so on).
*
* On the client side, this module handles launching circuits. Circuit
......
......@@ -127,7 +127,7 @@ MOCK_DECL(unsigned int, circuitmux_num_cells, (circuitmux_t *cmux));
unsigned int circuitmux_num_circuits(circuitmux_t *cmux);
unsigned int circuitmux_num_active_circuits(circuitmux_t *cmux);
/* Debuging interface - slow. */
/* Debugging interface - slow. */
int64_t circuitmux_count_queued_destroy_cells(const channel_t *chan,
const circuitmux_t *cmux);
......
......@@ -1536,7 +1536,7 @@ circpad_machine_schedule_padding,(circpad_machine_runtime_t *mi))
/**
* If the machine transitioned to the END state, we need
* to check to see if it wants us to shut it down immediately.
* If it does, then we need to send the appropiate negotiation commands
* If it does, then we need to send the appropriate negotiation commands
* depending on which side it is.
*
* After this function is called, mi may point to freed memory. Do
......@@ -2076,7 +2076,7 @@ circpad_machine_conditions_keep(origin_circuit_t *circ,
*
* The padding code only cares if the circuit is building,
* opened, used for streams, and/or still has relay early cells.
* This returns a bitmask of all state properities that apply to
* This returns a bitmask of all state properties that apply to
* this circuit.
*/
static inline
......@@ -2390,7 +2390,7 @@ circpad_deliver_unrecognized_cell_events(circuit_t *circ,
* Deliver circpad events for "recognized" relay cells.
*
* Recognized cells are destined for this hop, either client or middle.
* Check if this is a padding cell or not, and send the appropiate
* Check if this is a padding cell or not, and send the appropriate
* received event.
*/
void
......@@ -2682,7 +2682,7 @@ circpad_circ_responder_machine_init(void)
serialize this into the consensus or the torrc */
/* We transition to the burst state on padding receive and on non-padding
* recieve */
* receive */
circ_responder_machine->states[CIRCPAD_STATE_START].
next_state[CIRCPAD_EVENT_PADDING_RECV] = CIRCPAD_STATE_BURST;
circ_responder_machine->states[CIRCPAD_STATE_START].
......@@ -2711,7 +2711,7 @@ circpad_circ_responder_machine_init(void)
/* During burst state we wait forever for padding to arrive.
We are waiting for a padding cell from the client to come in, so that we
respond, and we immitate how extend looks like */
respond, and we imitate how extend looks like */
circ_responder_machine->states[CIRCPAD_STATE_BURST].histogram[0] = 0;
// Only infinity bin:
circ_responder_machine->states[CIRCPAD_STATE_BURST].histogram[1] = 1;
......
......@@ -25,7 +25,7 @@
* Client-side introduction circuit hiding machine:
*
* This machine hides client-side introduction circuits by making their
* circuit consruction sequence look like normal general circuits that
* circuit construction sequence look like normal general circuits that
* download directory information. Furthermore, the circuits are kept open
* until all the padding has been sent, since intro circuits are usually
* very short lived and this act as a distinguisher. For more info see
......
......@@ -1991,7 +1991,7 @@ circuit_purpose_is_hidden_service(uint8_t purpose)
return 0;
}
/** Retrun true iff the given circuit is an HS client circuit. */
/** Return true iff the given circuit is an HS client circuit. */
bool
circuit_purpose_is_hs_client(const uint8_t purpose)
{
......@@ -1999,7 +1999,7 @@ circuit_purpose_is_hs_client(const uint8_t purpose)
purpose <= CIRCUIT_PURPOSE_C_HS_MAX_);
}
/** Retrun true iff the given circuit is an HS service circuit. */
/** Return true iff the given circuit is an HS service circuit. */
bool
circuit_purpose_is_hs_service(const uint8_t purpose)
{
......@@ -2007,14 +2007,14 @@ circuit_purpose_is_hs_service(const uint8_t purpose)
purpose <= CIRCUIT_PURPOSE_S_HS_MAX_);
}
/** Retrun true iff the given circuit is an HS Vanguards circuit. */
/** Return true iff the given circuit is an HS Vanguards circuit. */
bool
circuit_purpose_is_hs_vanguards(const uint8_t purpose)
{
return (purpose == CIRCUIT_PURPOSE_HS_VANGUARDS);
}
/** Retrun true iff the given circuit is an HS v2 circuit. */
/** Return true iff the given circuit is an HS v2 circuit. */
bool
circuit_is_hs_v2(const circuit_t *circ)
{
......@@ -2022,7 +2022,7 @@ circuit_is_hs_v2(const circuit_t *circ)
(CONST_TO_ORIGIN_CIRCUIT(circ)->rend_data != NULL));
}
/** Retrun true iff the given circuit is an HS v3 circuit. */
/** Return true iff the given circuit is an HS v3 circuit. */
bool
circuit_is_hs_v3(const circuit_t *circ)
{
......
......@@ -19,7 +19,7 @@
* TCP application socket that has arrived via (e.g.) a SOCKS request, or an
* exit connection.
*
* Not every instance of edge_connection_t truly represents an edge connction,
* Not every instance of edge_connection_t truly represents an edge connection,
* however. (Sorry!) We also create edge_connection_t objects for streams that
* we will not be handling with TCP. The types of these streams are:
* <ul>
......@@ -578,8 +578,8 @@ connection_edge_end(edge_connection_t *conn, uint8_t reason)
/**
* Helper function for bsearch.
*
* As per smartlist_bsearch, return < 0 if key preceeds member,
* > 0 if member preceeds key, and 0 if they are equal.
* As per smartlist_bsearch, return < 0 if key precedes member,
* > 0 if member precedes key, and 0 if they are equal.
*
* This is equivalent to subtraction of the values of key - member
* (why does no one ever say that explicitly?).
......@@ -2066,7 +2066,7 @@ connection_ap_handle_onion(entry_connection_t *conn,
log_info(LD_GENERAL, "Found %s descriptor in cache for %s. %s.",
(descriptor_is_usable) ? "usable" : "unusable",
safe_str_client(onion_address),
(descriptor_is_usable) ? "Not fetching." : "Refecting.");
(descriptor_is_usable) ? "Not fetching." : "Refetching.");
} else {
rend_cache_lookup_result = -ENOENT;
}
......@@ -2655,8 +2655,8 @@ destination_from_socket(entry_connection_t *conn, socks_request_t *req)
break;
#endif /* defined(TRANS_NETFILTER_IPV6) */
default:
log_warn(LD_BUG,
"Received transparent data from an unsuported socket family %d",
log_warn(LD_BUG, "Received transparent data from an unsupported "
"socket family %d",
ENTRY_TO_CONN(conn)->socket_family);
return -1;
}
......
......@@ -28,7 +28,7 @@
/*
* Circuit Purposes
*
* The following defines an enumeration of all possible circuit purpose so
* The following defines an enumeration of all possible circuit purposes so
* they appear in the trace with the define name (first parameter of
* ctf_enum_value) instead of the numerical value.
*/
......@@ -70,7 +70,7 @@ TRACEPOINT_ENUM(tor_circuit, purpose,
/* Misc. */
ctf_enum_value("TESTING", CIRCUIT_PURPOSE_TESTING)
ctf_enum_value("CONTROLER", CIRCUIT_PURPOSE_CONTROLLER)
ctf_enum_value("CONTROLLER", CIRCUIT_PURPOSE_CONTROLLER)
ctf_enum_value("PATH_BIAS_TESTING", CIRCUIT_PURPOSE_PATH_BIAS_TESTING)
/* VanGuard */
......
......@@ -50,7 +50,7 @@ typedef struct extend_cell_t {
tor_addr_port_t orport_ipv4;
/** An IPv6 address and port for the node we're connecting to. */
tor_addr_port_t orport_ipv6;
/** Identity fingerprint of the node we're conecting to.*/
/** Identity fingerprint of the node we're connecting to.*/
uint8_t node_id[DIGEST_LEN];
/** Ed25519 public identity key. Zero if not set. */
struct ed25519_public_key_t ed_pubkey;
......
......@@ -31,7 +31,7 @@ struct or_connection_t {
/** This is the ClientHash value we expect to receive from the
* client during the Extended ORPort authentication protocol. We
* compute it upon receiving the ClientNoce from the client, and we
* compare it with the acual ClientHash value sent by the
* compare it with the actual ClientHash value sent by the
* client. */
char *ext_or_auth_correct_client_hash;
/** String carrying the name of the pluggable transport
......@@ -74,7 +74,7 @@ struct or_connection_t {
unsigned int is_outgoing:1;
unsigned int proxy_type:3; /**< One of PROXY_NONE...PROXY_HAPROXY */
unsigned int wide_circ_ids:1;
/** True iff a failure on this connection indicates a posssible
/** True iff a failure on this connection indicates a possible
* bootstrapping problem. We set this as true if we notice that this
* connection could handle a pending origin circuit, or if we launch it to
* handle an origin circuit. */
......
......@@ -54,7 +54,7 @@ enum path_state_t {
/** Did any SOCKS streams or hidserv introductions actually succeed on
* this circuit?
*
* If any streams detatch/fail from this circuit, the code transitions
* If any streams detach/fail from this circuit, the code transitions
* the circuit back to PATH_STATE_USE_ATTEMPTED to ensure we probe. See
* pathbias_mark_use_rollback() for that.
*/
......
......@@ -1849,7 +1849,7 @@ policies_log_first_redundant_entry(const smartlist_t *policy)
int found_ipv4_wildcard = 0, found_ipv6_wildcard = 0;
const int i = p_sl_idx;
/* Look for accept/reject *[4|6|]:* entires */
/* Look for accept/reject *[4|6|]:* entries */
if (p->prt_min <= 1 && p->prt_max == 65535 && p->maskbits == 0) {
family = tor_addr_family(&p->addr);
/* accept/reject *:* may have already been expanded into
......
......@@ -678,7 +678,7 @@ sendme_record_received_cell_digest(circuit_t *circ, crypt_path_t *cpath)
/* Record incoming digest. */
cpath_sendme_record_cell_digest(cpath, false);
} else {
/* Record foward digest. */
/* Record forward digest. */
relay_crypto_record_sendme_digest(&TO_OR_CIRCUIT(circ)->crypto, true);
}
}
......
......@@ -6,7 +6,7 @@
/**
* @file server_port_cfg_st.h
* @brief Cnfiguration structure for server ports.
* @brief Configuration structure for server ports.
**/
#ifndef SERVER_PORT_CFG_ST_H
......
......@@ -479,7 +479,7 @@ parse_socks5_userpass_auth(const uint8_t *raw_data, socks_request_t *req,
/**
* Validate and respond to SOCKS5 username/password request we
* parsed in parse_socks5_userpass_auth (corresponding to <b>req</b>.
* Set <b>req->reply</b> to appropriate responsed. Return
* Set <b>req->reply</b> to appropriate response. Return
* SOCKS_RESULT_DONE on success or SOCKS_RESULT_INVALID on failure.
*/
static socks_result_t
......
......@@ -6,7 +6,7 @@ If you run `make`, two .a archives will be built, similar to djb's curve25519
code. Alternatively, read on:
The C implementation is contained within curve25519-donna.c. It has no external
dependancies and is BSD licenced. You can copy/include/link it directly in with
dependencies and is BSD licenced. You can copy/include/link it directly in with
your program. Recommended C flags: -O2
The x86-64 bit implementation is contained within curve25519-donna-x86-64.c and
......
[ed25519](http://ed25519.cr.yp.to/) is an
[Elliptic Curve Digital Signature Algortithm](http://en.wikipedia.org/wiki/Elliptic_Curve_DSA),
[Elliptic Curve Digital Signature Algorithm](http://en.wikipedia.org/wiki/Elliptic_Curve_DSA),
developed by [Dan Bernstein](http://cr.yp.to/djb.html),
[Niels Duif](http://www.nielsduif.nl/),
[Tanja Lange](http://hyperelliptic.org/tanja),
......@@ -56,7 +56,7 @@ No configuration is needed **if you are compiling against OpenSSL**.
##### Hash Options
If you are not compiling aginst OpenSSL, you will need a hash function.
If you are not compiling against OpenSSL, you will need a hash function.
To use a simple/**slow** implementation of SHA-512, use `-DED25519_REFHASH` when compiling `ed25519.c`.
This should never be used except to verify the code works when OpenSSL is not available.
......@@ -73,7 +73,7 @@ custom hash implementation in ed25519-hash-custom.h. The hash must have a 512bit
##### Random Options
If you are not compiling aginst OpenSSL, you will need a random function for batch verification.
If you are not compiling against OpenSSL, you will need a random function for batch verification.
To use a custom random function, use `-DED25519_CUSTOMRANDOM` when compiling `ed25519.c` and put your
custom hash implementation in ed25519-randombytes-custom.h. The random function must implement:
......@@ -170,7 +170,7 @@ signing due to both using the same code for the scalar multiply.
#### Testing
Fuzzing against reference implemenations is now available. See [fuzz/README](fuzz/README.md).
Fuzzing against reference implementations is now available. See [fuzz/README](fuzz/README.md).
Building `ed25519.c` with `-DED25519_TEST` and linking with `test.c` will run basic sanity tests
and benchmark each function. `test-batch.c` has been incorporated in to `test.c`.
......@@ -180,4 +180,4 @@ with extreme values to ensure they function correctly. SSE2 is now supported.
#### Papers
[Available on the Ed25519 website](http://ed25519.cr.yp.to/papers.html)
\ No newline at end of file
[Available on the Ed25519 website](http://ed25519.cr.yp.to/papers.html)
......@@ -6,7 +6,7 @@
function usage($reason) {
echoln("Usage: php build-nix.php [flags]");
echoln("Flags in parantheses are optional");