Loading ChangeLog +1 −1 Original line number Diff line number Diff line Loading @@ -444,7 +444,7 @@ Changes in version 0.3.2.9 - 2018-01-09 o Minor bugfixes (portability, msvc): - Fix a bug in the bit-counting parts of our timing-wheel code on MSVC. (Note that MSVC is still not a supported build platform, due to cyptographic timing channel risks.) Fixes bug 24633; bugfix to cryptographic timing channel risks.) Fixes bug 24633; bugfix on 0.2.9.1-alpha. ReleaseNotes +1 −1 Original line number Diff line number Diff line Loading @@ -621,7 +621,7 @@ Changes in version 0.3.2.9 - 2018-01-09 Hurd. Fixes bug 23098; bugfix on 0.3.1.1-alpha. - Fix a bug in the bit-counting parts of our timing-wheel code on MSVC. (Note that MSVC is still not a supported build platform, due to cyptographic timing channel risks.) Fixes bug 24633; bugfix to cryptographic timing channel risks.) Fixes bug 24633; bugfix on 0.2.9.1-alpha. o Minor bugfixes (relay): Loading src/common/compat.c +1 −1 Original line number Diff line number Diff line Loading @@ -2890,7 +2890,7 @@ compute_num_cpus(void) /** Helper: Deal with confused or out-of-bounds values from localtime_r and * friends. (On some platforms, they can give out-of-bounds values or can * return NULL.) If <b>islocal</b>, this is a localtime result; otherwise * it's from gmtime. The function returned <b>r</b>, when given <b>timep</b> * it's from gmtime. The function returns <b>r</b>, when given <b>timep</b> * as its input. If we need to store new results, store them in * <b>resultbuf</b>. */ static struct tm * Loading src/common/crypto.c +1 −1 Original line number Diff line number Diff line Loading @@ -1915,7 +1915,7 @@ crypto_strongest_rand_syscall(uint8_t *out, size_t out_len) return 0; #elif defined(__linux__) && defined(SYS_getrandom) static int getrandom_works = 1; /* Be optimitic about our chances... */ static int getrandom_works = 1; /* Be optimistic about our chances... */ /* getrandom() isn't as straightforward as getentropy(), and has * no glibc wrapper. Loading src/or/channel.c +8 −11 Original line number Diff line number Diff line Loading @@ -1435,7 +1435,6 @@ channel_clear_remote_end(channel_t *chan) /** * Write to a channel the given packed cell. * * * Two possible errors can happen. Either the channel is not opened or the * lower layer (specialized channel) failed to write it. In both cases, it is * the caller responsibility to free the cell. Loading Loading @@ -1864,12 +1863,11 @@ channel_listener_process_incoming(channel_listener_t *listener) * this comes from the old connection_or_set_state_open() of connection_or.c. * * Because of this mechanism, future channel_t subclasses should take care * not to change a channel to from CHANNEL_STATE_OPENING to CHANNEL_STATE_OPEN * not to change a channel from CHANNEL_STATE_OPENING to CHANNEL_STATE_OPEN * until there is positive confirmation that the network is operational. * In particular, anything UDP-based should not make this transition until a * packet is received from the other side. */ void channel_do_open_actions(channel_t *chan) { Loading Loading @@ -3199,7 +3197,7 @@ channel_num_cells_writeable(channel_t *chan) ********************/ /** * Update the created timestamp for a channel * Update the created timestamp for a channel. * * This updates the channel's created timestamp and should only be called * from channel_init(). Loading @@ -3216,7 +3214,7 @@ channel_timestamp_created(channel_t *chan) } /** * Update the created timestamp for a channel listener * Update the created timestamp for a channel listener. * * This updates the channel listener's created timestamp and should only be * called from channel_init_listener(). Loading @@ -3233,7 +3231,7 @@ channel_listener_timestamp_created(channel_listener_t *chan_l) } /** * Update the last active timestamp for a channel * Update the last active timestamp for a channel. * * This function updates the channel's last active timestamp; it should be * called by the lower layer whenever there is activity on the channel which Loading @@ -3258,9 +3256,8 @@ channel_timestamp_active(channel_t *chan) } /** * Update the last active timestamp for a channel listener * Update the last active timestamp for a channel listener. */ void channel_listener_timestamp_active(channel_listener_t *chan_l) { Loading @@ -3278,7 +3275,6 @@ channel_listener_timestamp_active(channel_listener_t *chan_l) * should be called whenever a new incoming channel is accepted on a * listener. */ void channel_listener_timestamp_accepted(channel_listener_t *chan_l) { Loading Loading @@ -3308,7 +3304,7 @@ channel_timestamp_client(channel_t *chan) } /** * Update the recv timestamp * Update the recv timestamp. * * This is called whenever we get an incoming cell from the lower layer. * This also updates the active timestamp. Loading @@ -3329,7 +3325,8 @@ channel_timestamp_recv(channel_t *chan) } /** * Update the xmit timestamp * Update the xmit timestamp. * * This is called whenever we pass an outgoing cell to the lower layer. This * also updates the active timestamp. */ Loading Loading
ChangeLog +1 −1 Original line number Diff line number Diff line Loading @@ -444,7 +444,7 @@ Changes in version 0.3.2.9 - 2018-01-09 o Minor bugfixes (portability, msvc): - Fix a bug in the bit-counting parts of our timing-wheel code on MSVC. (Note that MSVC is still not a supported build platform, due to cyptographic timing channel risks.) Fixes bug 24633; bugfix to cryptographic timing channel risks.) Fixes bug 24633; bugfix on 0.2.9.1-alpha.
ReleaseNotes +1 −1 Original line number Diff line number Diff line Loading @@ -621,7 +621,7 @@ Changes in version 0.3.2.9 - 2018-01-09 Hurd. Fixes bug 23098; bugfix on 0.3.1.1-alpha. - Fix a bug in the bit-counting parts of our timing-wheel code on MSVC. (Note that MSVC is still not a supported build platform, due to cyptographic timing channel risks.) Fixes bug 24633; bugfix to cryptographic timing channel risks.) Fixes bug 24633; bugfix on 0.2.9.1-alpha. o Minor bugfixes (relay): Loading
src/common/compat.c +1 −1 Original line number Diff line number Diff line Loading @@ -2890,7 +2890,7 @@ compute_num_cpus(void) /** Helper: Deal with confused or out-of-bounds values from localtime_r and * friends. (On some platforms, they can give out-of-bounds values or can * return NULL.) If <b>islocal</b>, this is a localtime result; otherwise * it's from gmtime. The function returned <b>r</b>, when given <b>timep</b> * it's from gmtime. The function returns <b>r</b>, when given <b>timep</b> * as its input. If we need to store new results, store them in * <b>resultbuf</b>. */ static struct tm * Loading
src/common/crypto.c +1 −1 Original line number Diff line number Diff line Loading @@ -1915,7 +1915,7 @@ crypto_strongest_rand_syscall(uint8_t *out, size_t out_len) return 0; #elif defined(__linux__) && defined(SYS_getrandom) static int getrandom_works = 1; /* Be optimitic about our chances... */ static int getrandom_works = 1; /* Be optimistic about our chances... */ /* getrandom() isn't as straightforward as getentropy(), and has * no glibc wrapper. Loading
src/or/channel.c +8 −11 Original line number Diff line number Diff line Loading @@ -1435,7 +1435,6 @@ channel_clear_remote_end(channel_t *chan) /** * Write to a channel the given packed cell. * * * Two possible errors can happen. Either the channel is not opened or the * lower layer (specialized channel) failed to write it. In both cases, it is * the caller responsibility to free the cell. Loading Loading @@ -1864,12 +1863,11 @@ channel_listener_process_incoming(channel_listener_t *listener) * this comes from the old connection_or_set_state_open() of connection_or.c. * * Because of this mechanism, future channel_t subclasses should take care * not to change a channel to from CHANNEL_STATE_OPENING to CHANNEL_STATE_OPEN * not to change a channel from CHANNEL_STATE_OPENING to CHANNEL_STATE_OPEN * until there is positive confirmation that the network is operational. * In particular, anything UDP-based should not make this transition until a * packet is received from the other side. */ void channel_do_open_actions(channel_t *chan) { Loading Loading @@ -3199,7 +3197,7 @@ channel_num_cells_writeable(channel_t *chan) ********************/ /** * Update the created timestamp for a channel * Update the created timestamp for a channel. * * This updates the channel's created timestamp and should only be called * from channel_init(). Loading @@ -3216,7 +3214,7 @@ channel_timestamp_created(channel_t *chan) } /** * Update the created timestamp for a channel listener * Update the created timestamp for a channel listener. * * This updates the channel listener's created timestamp and should only be * called from channel_init_listener(). Loading @@ -3233,7 +3231,7 @@ channel_listener_timestamp_created(channel_listener_t *chan_l) } /** * Update the last active timestamp for a channel * Update the last active timestamp for a channel. * * This function updates the channel's last active timestamp; it should be * called by the lower layer whenever there is activity on the channel which Loading @@ -3258,9 +3256,8 @@ channel_timestamp_active(channel_t *chan) } /** * Update the last active timestamp for a channel listener * Update the last active timestamp for a channel listener. */ void channel_listener_timestamp_active(channel_listener_t *chan_l) { Loading @@ -3278,7 +3275,6 @@ channel_listener_timestamp_active(channel_listener_t *chan_l) * should be called whenever a new incoming channel is accepted on a * listener. */ void channel_listener_timestamp_accepted(channel_listener_t *chan_l) { Loading Loading @@ -3308,7 +3304,7 @@ channel_timestamp_client(channel_t *chan) } /** * Update the recv timestamp * Update the recv timestamp. * * This is called whenever we get an incoming cell from the lower layer. * This also updates the active timestamp. Loading @@ -3329,7 +3325,8 @@ channel_timestamp_recv(channel_t *chan) } /** * Update the xmit timestamp * Update the xmit timestamp. * * This is called whenever we pass an outgoing cell to the lower layer. This * also updates the active timestamp. */ Loading