cosmopolitan/net/http/escape.h
2024-06-01 03:19:53 -07:00

45 lines
1.9 KiB
C

#ifndef COSMOPOLITAN_NET_HTTP_ESCAPE_H_
#define COSMOPOLITAN_NET_HTTP_ESCAPE_H_
#define kControlWs 1
#define kControlC0 2
#define kControlC1 4
COSMOPOLITAN_C_START_
extern const char kEscapeAuthority[256];
extern const char kEscapeIp[256];
extern const char kEscapePath[256];
extern const char kEscapeSegment[256];
extern const char kEscapeParam[256];
extern const char kEscapeFragment[256];
char *EscapeHtml(const char *, size_t, size_t *) libcesque;
char *EscapeUrl(const char *, size_t, size_t *, const char[256]) libcesque;
char *EscapeUser(const char *, size_t, size_t *) libcesque;
char *EscapePass(const char *, size_t, size_t *) libcesque;
char *EscapeIp(const char *, size_t, size_t *) libcesque;
char *EscapeHost(const char *, size_t, size_t *) libcesque;
char *EscapePath(const char *, size_t, size_t *) libcesque;
char *EscapeParam(const char *, size_t, size_t *) libcesque;
char *EscapeFragment(const char *, size_t, size_t *) libcesque;
char *EscapeSegment(const char *, size_t, size_t *) libcesque;
char *EscapeJsStringLiteral(char **, size_t *, const char *, size_t,
size_t *) libcesque;
ssize_t HasControlCodes(const char *, size_t, int) libcesque;
char *Underlong(const char *, size_t, size_t *) libcesque;
char *DecodeLatin1(const char *, size_t, size_t *) libcesque;
char *EncodeLatin1(const char *, size_t, size_t *, int) libcesque;
char *EncodeHttpHeaderValue(const char *, size_t, size_t *) libcesque;
char *VisualizeControlCodes(const char *, size_t, size_t *) libcesque;
char *IndentLines(const char *, size_t, size_t *, size_t) libcesque;
char *EncodeBase32(const char *, size_t, const char *, size_t,
size_t *) libcesque;
char *DecodeBase32(const char *, size_t, const char *, size_t,
size_t *) libcesque;
char *EncodeBase64(const char *, size_t, size_t *) libcesque;
char *DecodeBase64(const char *, size_t, size_t *) libcesque;
COSMOPOLITAN_C_END_
#endif /* COSMOPOLITAN_NET_HTTP_ESCAPE_H_ */