#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/nls.h>
#include <linux/errno.h>
static unsigned char identity[256];
static int uni2char(wchar_t uni, unsigned char *out, int boundlen)
{ … }
static int char2uni(const unsigned char *rawstring, int boundlen, wchar_t *uni)
{ … }
static struct nls_table table = …;
static int __init init_nls_utf8(void)
{ … }
static void __exit exit_nls_utf8(void)
{ … }
module_init(…) …
module_exit(…)
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;