Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Treat s_line as a singular header with index 0 #487

Closed
milabs opened this issue May 19, 2016 · 2 comments
Closed

Treat s_line as a singular header with index 0 #487

milabs opened this issue May 19, 2016 · 2 comments
Assignees
Labels
Milestone

Comments

@milabs
Copy link
Contributor

milabs commented May 19, 2016

It likely will make the code easier by unifying EOL-based header line parsing.

@krizhanovsky krizhanovsky added this to the 0.6 OS milestone May 19, 2016
krizhanovsky added a commit that referenced this issue Oct 10, 2016
* robust EoL processing via real FSM states w/o ugly _eol;
* remove pseudo states like RGEN_LWS_empty and process empty Host in exactly
  this header processing routine;
* do not play dirty games with parser->hdr fixup which could be s_line or whatever,
  but rather explicitly move w/o fixups (probably, #487 is obsolete now);
* now hm->parser.to_read = 0 means 'everything is read' whic is different from
  -1, 'do not know how much to read';
* merge tfw_http_msg_field_chunk_fixup() with __tfw_http_msg_add_data_ptr();
* add new unit tests for HTTP parser;
* there is no LWS in RFC 7230, but rather OWS;
* many code cleanups.
@krizhanovsky krizhanovsky modified the milestones: backlog, 0.6 KTLS, 0.7 HTTP/2, 0.8 TDB v0.2 Jan 9, 2018
@krizhanovsky krizhanovsky modified the milestones: 1.2 TDB v0.2, 1.1 QUIC Aug 8, 2018
@krizhanovsky krizhanovsky added the question Questions and support tasks label Aug 9, 2019
@krizhanovsky krizhanovsky modified the milestones: 0.8 TLS 1.3, 0.7 HTTP/2 Aug 9, 2019
@krizhanovsky
Copy link
Contributor

krizhanovsky commented Aug 9, 2019

@aleksostapenko could you please revise the task with HTTP/2 parser changes? It should be quickly to do with the HTTP/2 changes or we could just close it.

It seems the only sense of the change is to point &msg->conn->parser.hdr to status line and use generic macros, e.g. __FSM_MATCH_MOVE() and __FSM_MOVE_n() instead of field parametrized __FSM_MATCH_MOVE_f() and __FSM_MOVE_nf(). HTTP/2 treats status line in the same HEADER frame and according the same rules.

@krizhanovsky
Copy link
Contributor

Done in #1368

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants