benoitc / benoitc/http-parser

HttpParser and multiple concatenated HTTP responses

Abierto
#44 2 comentarios 0 reacciones 0 asignados Ver en GitHub
improvement
Lenguaje dominante
C
Estrellas
345
Forks
94
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Hi!

If my understanding is correct HttpParser.execute returns the number of bytes consumed, hence it is possible to parse multiple concatenated HTTP responses by checking is_message_complete() and starting a new parser from the same very position the last one stopped.

However the observed behavior is very different: execute() happily consumes the whole string, the subsequent responses text ends up in the message body and _clen_rest is negative.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Empieza reproduciendo el caso de respuestas concatenadas en torno a HttpParser.execute() e is_message_complete(), y después inspecciona cómo se actualiza _clen_rest cuando termina una respuesta. La tarea estará terminada cuando el parser indique el límite de la primera respuesta sin colocar texto de respuestas posteriores en el body, de modo que otro parser pueda comenzar en la posición devuelta.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
c, python
Área
networking
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.