unicode
loff_t *pos, int unicode)
size_t bytes_per_ch = unicode ? 3 : 1;
if (!unicode)
if (!unicode)
if ((!unicode && ch < 0x100) || (unicode && ch < 0x80)) {
} else if (unicode && ch < 0x800) {
} else if (unicode) {
static void _spk_do_catch_up(struct spk_synth *synth, int unicode)
if (!unicode)
if (unicode)
unicode unitable[MAX_FONTLEN][255];
con_insert_unipair(struct uni_pagedict *p, u_short unicode, u_short fontpos)
n = UNI_DIR(unicode);
n = UNI_ROW(unicode);
row[UNI_GLYPH(unicode)] = fontpos;
p->sum += (fontpos << 20U) + unicode;
int err1 = con_insert_unipair(dict, plist->unicode, plist->fontpos);
unilist[ect].unicode = UNI(d, r, g);
static int vc_selection_store_chars(struct vc_data *vc, bool unicode)
bp = kmalloc_array((vc_sel.end - vc_sel.start) / 2 + 1, unicode ? 4 : 1,
u32 c = sel_pos(i, unicode);
if (unicode)
bool unicode = vt_do_kdgkbmode(fg_console) == K_UNICODE;
spc = is_space_on_vt(sel_pos(ps, unicode));
if ((spc && !is_space_on_vt(sel_pos(ps, unicode))) ||
(!spc && !inword(sel_pos(ps, unicode))))
spc = is_space_on_vt(sel_pos(pe, unicode));
if ((spc && !is_space_on_vt(sel_pos(pe, unicode))) ||
(!spc && !inword(sel_pos(pe, unicode))))
is_space_on_vt(sel_pos(new_sel_end, unicode))) {
if (!is_space_on_vt(sel_pos(pe, unicode)) ||
if (is_space_on_vt(sel_pos(pe, unicode)))
return vc_selection_store_chars(vc, unicode);
sel_pos(int n, bool unicode)
if (unicode)
static int vcs_size(const struct vc_data *vc, bool attr, bool unicode)
if (unicode)
} else if (unicode)
static void notify_write(struct vc_data *vc, unsigned int unicode)
struct vt_notifier_param param = { .vc = vc, .c = unicode };
__le16 *unicode, int unicode_size)
string[i] = (char)(le16_to_cpu(unicode[i]));
wchar_t **unicode, unsigned char *nr_slots)
if (!*unicode) {
*unicode = __getname();
if (!*unicode) {
fat16_towchar(*unicode + offset, ds->name0_4, 5);
fat16_towchar(*unicode + offset + 5, ds->name5_10, 6);
fat16_towchar(*unicode + offset + 11, ds->name11_12, 2);
(*unicode)[offset + 13] = 0;
wchar_t *unicode = NULL;
&unicode, &nr_slots);
void *longname = unicode + FAT_MAX_UNI_CHARS;
len = fat_uni_to_x8(sb, unicode, longname, size);
if (unicode)
__putname(unicode);
wchar_t *unicode = NULL;
&unicode, &nr_slots);
void *longname = unicode + FAT_MAX_UNI_CHARS;
int len = fat_uni_to_x8(sb, unicode, longname, size);
if (unicode)
__putname(unicode);
&fd.search_key->cat.name.unicode,
memcpy(key->cat.name.unicode, name->unicode, ustrlen);
offsetof(struct hfsplus_unistr, unicode) +
ip = ustr->unicode;
p1 = s1->unicode;
p2 = s2->unicode;
ustr->unicode[outlen++] = cpu_to_be16(*dstr++);
ustr->unicode[outlen++] = cpu_to_be16(c);
p1 = s1->unicode;
p2 = s2->unicode;
mock_env->str1.unicode[0] = cpu_to_be16(0x00E9); /* é */
mock_env->str1.unicode[1] = cpu_to_be16(0x00F1); /* ñ */
mock_env->str1.unicode[2] = cpu_to_be16(0x00FC); /* ü */
mock_env->str2.unicode[0] = cpu_to_be16(0x00E9); /* é */
mock_env->str2.unicode[1] = cpu_to_be16(0x00F1); /* ñ */
mock_env->str2.unicode[2] = cpu_to_be16(0x00FC); /* ü */
mock_env->str2.unicode[1] = cpu_to_be16(0x00F2); /* ò */
mock_env->str1.unicode[0] = cpu_to_be16('a');
mock_env->str1.unicode[1] = cpu_to_be16(0x0000); /* null */
mock_env->str1.unicode[2] = cpu_to_be16('b');
mock_env->str2.unicode[0] = cpu_to_be16('a');
mock_env->str2.unicode[1] = cpu_to_be16(0x0000); /* null */
mock_env->str2.unicode[2] = cpu_to_be16('b');
mock_env->str1.unicode[i] = cpu_to_be16('A');
mock_env->str2.unicode[i] = cpu_to_be16('A');
mock_env->str2.unicode[HFSPLUS_MAX_STRLEN - 1] = cpu_to_be16('B');
mock_env->str1.unicode[0] = cpu_to_be16('A');
mock_env->str1.unicode[0] = cpu_to_be16(0x0000);
mock_env->str1.unicode[0] = cpu_to_be16('/');
mock_env->str1.unicode[0] = cpu_to_be16('a');
mock_env->str1.unicode[1] = cpu_to_be16('/');
mock_env->str1.unicode[2] = cpu_to_be16('b');
memset(ustr->unicode, 0, sizeof(ustr->unicode));
ustr->unicode[i] = cpu_to_be16((u16)ascii_str[i]);
mock_env->str1.unicode[i] = cpu_to_be16('a');
mock_env->str1.unicode[0] = cpu_to_be16(0x00E9); /* é */
mock_env->str1.unicode[1] = cpu_to_be16(0x00F1); /* ñ */
mock_env->str1.unicode[2] = cpu_to_be16(0x00FC); /* ü */
u16 actual_char = be16_to_cpu(ustr->unicode[i]);
KUNIT_EXPECT_EQ(test, '/', be16_to_cpu(mock_env->str1.unicode[0]));
KUNIT_EXPECT_EQ(test, 'a', be16_to_cpu(mock_env->str1.unicode[0]));
KUNIT_EXPECT_EQ(test, '/', be16_to_cpu(mock_env->str1.unicode[1]));
KUNIT_EXPECT_EQ(test, 'b', be16_to_cpu(mock_env->str1.unicode[2]));
KUNIT_EXPECT_EQ(test, '/', be16_to_cpu(mock_env->str1.unicode[0]));
KUNIT_EXPECT_EQ(test, '/', be16_to_cpu(mock_env->str1.unicode[1]));
KUNIT_EXPECT_EQ(test, '/', be16_to_cpu(mock_env->str1.unicode[2]));
KUNIT_EXPECT_EQ(test, 'a', be16_to_cpu(ustr.unicode[0]));
KUNIT_EXPECT_EQ(test, 0, be16_to_cpu(ustr.unicode[1]));
KUNIT_EXPECT_EQ(test, 'b', be16_to_cpu(ustr.unicode[2]));
memset(fd.key->attr.key_name.unicode, 0,
sizeof(fd.key->attr.key_name.unicode));
if (tcon->ses->unicode == 0)
else if (tcon->ses->unicode == 1)
int unicode;
bool unicode:1;
if (ses->unicode != 0)
psrch_inf->unicode = !!(pSMBr->hdr.Flags2 & SMBFLG2_UNICODE);
psrch_inf->unicode = !!(pSMBr->hdr.Flags2 & SMBFLG2_UNICODE);
ses->unicode = ctx->unicode;
if (ses->unicode == 1 && server->vals->cap_unicode != 0 &&
} else if (ses->unicode == 0 && server->vals->cap_unicode == 0) {
} else if (ses->unicode == 0) {
ctx->unicode = master_tcon->ses->unicode;
ctx->unicode = !result.negated;
cifs_dbg(FYI, "unicode set to %d\n", ctx->unicode);
ctx->unicode = -1; /* autodetect, but prefer UNICODE mode */
if (new_ctx->unicode != old_ctx->unicode) {
int unicode;
file_info->srch_inf.unicode);
file_info->srch_inf.unicode);
if (cifs_entry_is_dot(&de, file_info->srch_inf.unicode))
if (file_info->srch_inf.unicode) {
ctx->unicode = ses->unicode;
srch_inf->unicode = true;
hfsplus_unichr unicode[HFSPLUS_MAX_STRLEN];
hfsplus_unichr unicode[HFSPLUS_ATTR_MAX_STRLEN];
unsigned short unicode;