Skip to content

Instantly share code, notes, and snippets.

View panicbit's full-sized avatar
:shipit:
Ship it

panicbit

:shipit:
Ship it
  • Dortmund, Germany, ᐰ
View GitHub Profile
WARNING: "__powidf2" [~/tmp/rust.ko/hello.ko] undefined!
WARNING: "__powisf2" [~/tmp/rust.ko/hello.ko] undefined!
WARNING: "fmod" [~/tmp/rust.ko/hello.ko] undefined!
WARNING: "fmodf" [~/tmp/rust.ko/hello.ko] undefined!
$ make
rustc -O -C code-model=kernel -C relocation-model=static --crate-type lib -o main.o --emit obj main.rs
make -C /lib/modules/4.2.3-1-ARCH/build M=$(HOME)/tmp/rust.ko modules
make[1]: Entering directory '/usr/lib/modules/4.2.3-1-ARCH/build'
CC [M] $(HOME)/tmp/rust.ko/stub.o
LD [M] $(HOME)/tmp/rust.ko/hello.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: "_ZN6option13_$LT$impl$GT$6unwrap14_MSG_FILE_LINE20h8793f02bd16d261dX9ME" [$(HOME)/tmp/rust.ko/hello.ko] undefined!
WARNING: "_ZN9panicking5panic20h98c7cbfc94ff8f45EGKE" [$(HOME)/tmp/rust.ko/hello.ko] undefined!
note: link against the following native artifacts when linking against this static library
note: the order and any duplication can be significant on some platforms, and so may need to be preserved
note: library: c
note: library: m
rustc -v -O -C code-model=kernel -C relocation-model=static --crate-type lib -o main.o --emit obj --extern kcore=/tmp/libkcore.rlib main.rs
main.rs:1:1: 1:1 error: duplicate entry for `const_ptr` [E01m52]
main.rs:1 #![feature(libc)]
^
main.rs:1:1: 1:1 help: run `rustc --explain E0152` to see a detailed explanation
main.rs:1:1: 1:1 error: duplicate entry for `mut_ptr` [E0152]
main.rs:1 #![feature(libc)]
^
main.rs:1:1: 1:1 help: run `rustc --explain E0152` to see a detailed explanation
main.rs:1:1: 1:1 error: duplicate entry for `i8` [E0152]
WARNING: "_ZN6option13_$LT$impl$GT$6unwrap14_MSG_FILE_LINE20h3802c1360ab7cb7436ME" [~/tmp/rust.ko/hello.ko] undefined!
WARNING: "_ZN9panicking5panic20hfc2e8d4afaad003aKDKE" [~/tmp/rust.ko/hello.ko] undefined!
cdev::cdev_init(
cdev,
raw::this_module(),
None,
None,
None,
None,
None,
None,
None,
extern {
pub fn cdev_alloc() -> *mut cdev;
pub fn cdev_init(cdev: *mut cdev, fops: *const file_operations);
pub fn cdev_add(cdev: *mut cdev, dev: dev_t, count: c_uint) -> c_int;
pub fn cdev_del(cdev: *mut cdev);
pub fn rustko_extended_cdev_init(
cdev: *mut cdev,
owner: *mut module,
llseek: Option<extern fn(*mut file, loff_t, c_int) -> loff_t>,
read: Option<extern fn(*mut file, /* __user */ *mut char, size_t, *mut loff_t) -> ssize_t>,
$chrome_cmd = '"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" /high-dpi-support=1 /force-device-scale-factor=1 -- '
$safe_cmd = $chrome_cmd & '%*'
$unsafe_cmd = $chrome_cmd & '"%1"'
$key = "HKCR\Chrome\.exe\shell\open\command\"
RegWrite($key, "", "REG_SZ", $safe_cmd)
RegDelete($key, "DelegateExecute")
$key = "HKCR\Chrome\.exe\shell\opennewwindow\command\"
RegWrite($key, "", "REG_SZ", $safe_cmd)

Keybase proof

I hereby claim:

  • I am panicbit on github.
  • I am panicbit (https://keybase.io/panicbit) on keybase.
  • I have a public key whose fingerprint is 3C1A A5AB 6903 540F 9C0E 00FE 7FCE 5195 1A29 7D69

To claim this, I am signing this object:

pub fn foo_handler(api: Arc<Api>) -> Box<Handler> {
Box::new(move |_: &mut Request| {
// do stuff
Ok(Response::with((status::Ok, result)))
})
}