Opened 5 months ago

Last modified 5 weeks ago

#26945 assigned defect

Privcount blinding and encryption: always enable i128

Reported by: teor Owned by: teor
Priority: Medium Milestone: Tor: 0.4.0.x-final
Component: Core Tor/Tor Version:
Severity: Normal Keywords: privcount, 035-roadmap-master, 035-triaged-in-20180711, rust
Cc: teor, nickm, chelseakomlo Actual Points:
Parent ID: #25669 Points:
Reviewer: Sponsor: SponsorV

Child Tickets

Change History (7)

comment:1 Changed 5 months ago by teor

To test this feature, we should build i686 on Linux, and build and test on OS X:
https://forge.rust-lang.org/platform-support.html

comment:2 Changed 4 months ago by nickm

Sponsor: SponsorV

comment:3 Changed 3 months ago by nickm

Milestone: Tor: 0.3.5.x-finalTor: 0.3.6.x-final

Deferring privcount tickets in 0.3.5 to 0.3.6

comment:4 Changed 2 months ago by teor

nickm suggests that we just use i128, and wait to see if the unit tests fail.
(In most cases, the compilation will fail, so it will be obvious.)

If we want the fastest code, we should select 32-bit multiplications on some platforms, see:
https://github.com/dalek-cryptography/curve25519-dalek/issues/126
But that's not a high priority for us.

comment:5 Changed 2 months ago by teor

The relevant i128 lowering rust issue is:
https://github.com/rust-lang/rust/issues/45676

comment:6 Changed 2 months ago by teor

Summary: Privcount blinding and encryption: Conditionally disable i128Privcount blinding and encryption: always enable i128

So we will always enable i128, merge the code, then use the fallback i64 code for any platforms that fail

comment:7 Changed 5 weeks ago by nickm

Milestone: Tor: 0.3.6.x-finalTor: 0.4.0.x-final

Tor 0.3.6.x has been renamed to 0.4.0.x.

Note: See TracTickets for help on using tickets.