aws/s2n-tls

Link Rust and C documentation

Opened this issue · 0 comments

Problem:

s2n-tls has extensive API documentation, but only in the C library. We duplicate some documentation in the Rust bindings, but duplicating documentation does not seem like a good practice.

We should figure out how to link the Rust documentation to the C documentation.

Solution:

The easiest approach would be links to either the code or the doxygen page. We'd probably also need some sort of enforcement mechanism like a script or basic linter to enforce that every public method gets a doc link.

There might also be an accepted solution to this problem, so we should do some research.

  • Does this change what S2N sends over the wire? If yes, explain.
  • Does this change any public APIs? If yes, explain.
  • Which versions of TLS will this impact?

Requirements / Acceptance Criteria:

What must a solution address in order to solve the problem? How do we know the solution is complete?

  • RFC links: Links to relevant RFC(s)
  • Related Issues: Link any relevant issues
  • Will the Usage Guide or other documentation need to be updated?
  • Testing: How will this change be tested? Call out new integration tests, functional tests, or particularly interesting/important unit tests.
    • Will this change trigger SAW changes? Changes to the state machine, the s2n_handshake_io code that controls state transitions, the DRBG, or the corking/uncorking logic could trigger SAW failures.
    • Should this change be fuzz tested? Will it handle untrusted input? Create a separate issue to track the fuzzing work.

Out of scope:

Is there anything the solution will intentionally NOT address?