gurugio / rust-for-linux

Adding support for the Rust language to the Linux kernel.
Other
5 stars 0 forks source link

Which struct do we use for string expression? #2

Open gurugio opened 1 year ago

gurugio commented 1 year ago

rust/kernel/str.rs에는 BStr, CStr, CString이 있다. 어느 것을 사용해야할까? rust코드에서 문자열을 생성하고 커널의 C코드로 넘겨줄 때 어떤 방식을 사용해야하나? 현재 사용하는 방식

다른 드라이버나 개발자들은 어떤 방식을 사용하고있나 조사해서 결정할것

gurugio commented 1 year ago

https://discord.com/channels/1025034006506520667/1164181022246719518/1164213774740373534

Use c_str! macro https://github.com/gurugio/rust-for-linux/blob/rust-next-ldd-ch05/samples/rust/rust_ldd05.rs#L25

gurugio commented 1 year ago

그냥 CString을 만들면 널바이트가 들어가지 않음 반드시 c_str!매크로를 사용해야 널바이트가 추가됨