blob: fdff3347bcb01c8b342810861f4abfb10e317de3 [file] [log] [blame] [view] [raw]
---
title: facil.io - lib sock - a making sockets in C easy to use.
toc: true
layout: api
---
# A Simple Socket Library for non-blocking Sockets
This documentation is incomplete. I would love your help to finish it up. Until that time, please read the documentation in [the `sock.h` header file](https://github.com/boazsegev/facil.io/blob/master/lib/facil/core/sock.h).
## Overview
The `sock` linrary was born to solve [many concerns](sock_why) that pop up when using the system sockets API directly.
It supports TCP/IP sockets as well as unix doamin sockets. Pipes can also be attached to the library.
The `sock.h` API can be divided into a few different categories:
- General helper functions
- Accepting connections and opening new sockets.
- Sending and receiving data.
- Read/Write Hooks.
### example
## Constants
## Types
## General Functions
## Socket Initialization and State
## Sending / Receiving Data
## Read/Write Hooks
## Important Notes