Skip to main content

git_zero_core/
http.rs

1//! Shared HTTP request and response values; framing belongs to the host.
2
3#[derive(Clone, Copy)]
4pub struct Request<'a> {
5    pub method: &'a str,
6    /// Repository-relative URL path. Escape URL-reserved bytes with `%HH`.
7    pub path: &'a str,
8    pub query: Option<&'a str>,
9    /// Request Content-Type; upload-pack requires its Git request media type.
10    pub content_type: Option<&'a str>,
11    /// Git-Protocol header, for example `version=2`. Absent selects v0.
12    pub git_protocol: Option<&'a str>,
13    pub body: &'a [u8],
14}
15
16#[derive(Clone, Copy, Debug)]
17pub struct Response {
18    pub status: u16,
19    pub content_type: &'static str,
20}