diff options
author | kevlo <kevlo@FreeBSD.org> | 2011-11-18 03:05:20 +0000 |
---|---|---|
committer | kevlo <kevlo@FreeBSD.org> | 2011-11-18 03:05:20 +0000 |
commit | 1a26b28a9b13239c0dcae74ac1f94a5969fd2b3c (patch) | |
tree | 91e05f3019c9e61d84d991446d61ad595184fef3 /sys/kern/subr_mchain.c | |
parent | 3985e4e2af3096b00750b1a32f61f92d109f9372 (diff) | |
download | FreeBSD-src-1a26b28a9b13239c0dcae74ac1f94a5969fd2b3c.zip FreeBSD-src-1a26b28a9b13239c0dcae74ac1f94a5969fd2b3c.tar.gz |
Add unicode support to msdosfs and smbfs; original pathes from imura,
bug fixes by Kuan-Chung Chiu <buganini at gmail dot com>.
Tested by me in production for several days at work.
Diffstat (limited to 'sys/kern/subr_mchain.c')
-rw-r--r-- | sys/kern/subr_mchain.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/sys/kern/subr_mchain.c b/sys/kern/subr_mchain.c index e40e5ff..3fd265b 100644 --- a/sys/kern/subr_mchain.c +++ b/sys/kern/subr_mchain.c @@ -128,6 +128,21 @@ mb_reserve(struct mbchain *mbp, int size) } int +mb_put_padbyte(struct mbchain *mbp) +{ + caddr_t dst; + char x = 0; + + dst = mtod(mbp->mb_cur, caddr_t) + mbp->mb_cur->m_len; + + /* only add padding if address is odd */ + if ((unsigned long)dst & 1) + return mb_put_mem(mbp, (caddr_t)&x, 1, MB_MSYSTEM); + else + return 0; +} + +int mb_put_uint8(struct mbchain *mbp, uint8_t x) { return mb_put_mem(mbp, (caddr_t)&x, sizeof(x), MB_MSYSTEM); |