# http

HTTP - Hypertext Transfer Protocol Server BETA

Author | Matthew Schinkel - borntechi.com, copyright © 2011, all rights reserved.
Adapted-by |
Compiler | >=2.4n

Description

    HTTP server for serving web pages.

Sources

    http://www.faqs.org/rfcs/rfc793.html
    http://www.8051projects.net/out.php?link=http://www.sics.se/~adam/uip/index.php/Main_Page

Dependencies

- strings

## Summary

### Global variables/contants

- `const byte HTTP_LIB_HEADER[] = {`
- `var word http_data_size`
- `var byte http_command[8]`
- `const byte HTTP_HEADER_OUT_SIZE = count(HTTP_HEADER) + count(HTTP_LIB_HEADER)`
- `var word webpage_size = 0`
- `const byte HTTP_STRING_POST[] = "POST"`
- `var word _http_header_in_length`
- `var byte http_requested_file_name[HTTP_FILE_NAME_LENGHT]`
- `var word http_file_size`
- `const byte HTTP_STRING_GET[] = "GET"`

### Procedures

- `http_data'put(word in address, byte in data)`
- `http_server(byte in socket, word in data_size)`

### Functions

- `http_data'get(word in address) return byte`
- `http_is_filename(byte in file_name[]) return bit`

## API details

### Global variables/contants

- `const byte HTTP_LIB_HEADER[] = {`

      start of header set by lib.

- `var word http_data_size`

  No documentation found

- `var byte http_command[8]`

  No documentation found

- `const byte HTTP_HEADER_OUT_SIZE = count(HTTP_HEADER) + count(HTTP_LIB_HEADER)`

  No documentation found

- `var word webpage_size = 0`

  No documentation found

- `const byte HTTP_STRING_POST[] = "POST"`

  No documentation found

- `var word _http_header_in_length`

  No documentation found

- `var byte http_requested_file_name[HTTP_FILE_NAME_LENGHT]`

  No documentation found

- `var word http_file_size`

  No documentation found

- `const byte HTTP_STRING_GET[] = "GET"`

  No documentation found

### Procedures

- `http_data'put(word in address, byte in data)`

  No documentation found

- `http_server(byte in socket, word in data_size)`

  No documentation found

### Functions

- `http_data'get(word in address) return byte`

      Fake array http_data[] to read/write to TCP Data space.

- `http_is_filename(byte in file_name[]) return bit`

      Check file name requested by client

## Related samples

Here are the list of samples which use this library:

18f4620 | 18f4620_network_all_in_one.jal
18f4620 | 18f4620_network_webserver_enc28j60.jal