diff options
-rw-r--r-- | fs/cifs/cifsencrypt.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/cifs/cifsencrypt.c b/fs/cifs/cifsencrypt.c index 730038a12982..89fb94fac4b5 100644 --- a/fs/cifs/cifsencrypt.c +++ b/fs/cifs/cifsencrypt.c | |||
@@ -328,13 +328,16 @@ find_domain_name(struct cifsSesInfo *ses) | |||
328 | if (!attrsize) | 328 | if (!attrsize) |
329 | break; | 329 | break; |
330 | if (!ses->domainName) { | 330 | if (!ses->domainName) { |
331 | struct nls_table *default_nls; | ||
331 | ses->domainName = | 332 | ses->domainName = |
332 | kmalloc(attrsize + 1, GFP_KERNEL); | 333 | kmalloc(attrsize + 1, GFP_KERNEL); |
333 | if (!ses->domainName) | 334 | if (!ses->domainName) |
334 | return -ENOMEM; | 335 | return -ENOMEM; |
336 | default_nls = load_nls_default(); | ||
335 | cifs_from_ucs2(ses->domainName, | 337 | cifs_from_ucs2(ses->domainName, |
336 | (__le16 *)blobptr, attrsize, attrsize, | 338 | (__le16 *)blobptr, attrsize, attrsize, |
337 | load_nls_default(), false); | 339 | default_nls, false); |
340 | unload_nls(default_nls); | ||
338 | break; | 341 | break; |
339 | } | 342 | } |
340 | } | 343 | } |