X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/a0e5ed33194a97d3feb78eb13917a0c8c66e4be8..6f1e7b78af0f9c4c502609392f62771cf2528d8f:/unix/unix.h diff --git a/unix/unix.h b/unix/unix.h index fb312df2..ecacebda 100644 --- a/unix/unix.h +++ b/unix/unix.h @@ -1,6 +1,8 @@ #ifndef PUTTY_UNIX_H #define PUTTY_UNIX_H +#include "charset.h" + typedef void *Context; /* FIXME: probably needs changing */ extern Backend pty_backend; @@ -47,7 +49,16 @@ int select_result(int fd, int event); int first_socket(int *state, int *rwx); int next_socket(int *state, int *rwx); -#define DEFAULT_CODEPAGE 0 /* FIXME: no idea how to do this */ +/* + * In the Unix Unicode layer, DEFAULT_CODEPAGE is a special value + * which causes mb_to_wc and wc_to_mb to call _libc_ rather than + * libcharset. That way, we can interface the various charsets + * supported by libcharset with the one supported by mbstowcs and + * wcstombs (which will be the character set in which stuff read + * from the command line or config files is assumed to be encoded). + */ +#define DEFAULT_CODEPAGE 0xFFFF +#define CP_UTF8 CS_UTF8 /* from libcharset */ #define strnicmp strncasecmp #define stricmp strcasecmp @@ -55,4 +66,9 @@ int next_socket(int *state, int *rwx); /* BSD-semantics version of signal() */ void (*putty_signal(int sig, void (*func)(int)))(int); +/* + * Exports from unicode.c. + */ +int init_ucs(int font_charset); + #endif