Reduce allocations and copying by decrypting into a buffer
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 42/100
Línea de trabajo
Empieza localizando el trait Cryptographer y el backend openssl existente; después, sigue los llamadores de descifrado que actualmente reciben un Vec. Comprueba cómo el backend ya escribe en un búfer e identifica la API y los puntos de llamada que deben cambiar. Se considera terminado cuando el descifrado escribe directamente en el almacenamiento de salida proporcionado por el llamador, sin la asignación temporal ni la copia, y se conserva el comportamiento existente.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Our current Cryptographer trait decrypts from a &[u8] and returns a Vec<u8>, for simplicity. This means that each decryption operation must allocate a new Vec to hold the result, and then we copy the bytes out of that temporary Vec and into the final output Vec.
We could reduce the amount of allocation and copying going on here if our Cryptographer trait instead accepted an output buffer as argument and decrypted into it. That's actually out the existing openssl backend works under the hood already, we just wrap it in automatic creation of the Vec.
Not urgent, but could be a nice little improvement.
- Lenguaje dominante
- Rust
- Estrellas
- 29
- Forks
- 14
- Merge medio
- 3 h 15 min
- PR fusionados (30 d)
- 2
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mozilla/rust-ece
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
-
Security review Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
Todos los issues de mozilla/rust-ece
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
gitbutlerapp/gitbutler#15998 · 1 comentario ·
-
bug triage:deciding
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
open-telemetry/otel-arrow#4132 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100