// Actual webio encoding functions - used to live in webio.c

#define web_encode(xout,yin) web_encode_real(xout,yin,BFSZ,false)
#define web_encode3(x,y) web_encode_real3(x,y,BFSZ,false)

int url_encode(char *string, char *result, int bfsz);
char *url_encode_new( char *string, char *result,int  bfsz);
int url_encode_real(char *sstring, char *result, int bfsz,int  allow_some_specials);
int url_encode_real2(char *sstring, char *result, int bfsz);
char *db_url_encode(char *out,char *in,int outbfsz);

char *web_encode_real_charok(char *out,char *in,int outbfsz, int encode_eol);
char *web_encode_real(char *out,char *in,int outbfsz, int encode_eol);
int web_encode_real2(char *out,char *in,char **upto,int outbfsz);
char *web_encode_real3(char *out,char *in,int outbfsz, int encode_eol);
int web_decode(char *out, char *s,int outbfsz);
char *web_string_encode_real(char *out,char *in,int outbfsz,int adv);
char *web_string_encode_basic(char *out,char *in,int outbfsz);
char *web_string_encode(char *out,char *in,int outbfsz);
char *web_encode_js(char *out,char *in,int outbfsz);
char *web_encode_js2(char *out,char *in,int outbfsz);
char *web_decode_js(char *out,char *in,int outbfsz);
char *web_decode_js_fixed(char *out,char *in,int outbfsz);
char *web_encode_noquot(char *out,char *in,int outbfsz);
char *web_encode_hyphen(char *out,char *in,int outbfsz);
char *web_encode_dollar(char *out,char *in,int outbfsz);
char *web_base_format_url(char *out, char *base, char *url, int bfsz);
char *web_encode_bar(char *out,char *in,int outbfsz);
char *api_encode(char *in, char *out);


