Compare commits
10 Commits
1a9bf85527
...
d2154ade95
| Author | SHA1 | Date | |
|---|---|---|---|
| d2154ade95 | |||
| 84ddd68b45 | |||
| de9ec47a6d | |||
| 5aac640ab2 | |||
| daaffce503 | |||
| 2b16e726d4 | |||
| f3fe8c5441 | |||
| 9dc2ae1bf7 | |||
| ed9a7aa94f | |||
| 2d85f9f448 |
@@ -3,8 +3,8 @@ with pkgs;
|
||||
let
|
||||
agent_src = fetchgit {
|
||||
url = "https://gitea.rixxc.de/rixxc/x25519_agent.git";
|
||||
rev = "de022e4c6b6fa0086a9f5c4fad1340b75ccceba1";
|
||||
hash = "sha256-oe8ngvtEcu6O6FWm0ImTS4DTsQx78VRs9bQx672aUbI=";
|
||||
rev = "36ae72a8d90d94b5b0d1fd01adf50a33edd80e80";
|
||||
hash = "sha256-SxXZ/1CRi4J6Neq1uXIbue0bFa8WzdXPBnoXCjekOy8=";
|
||||
};
|
||||
|
||||
agent = callPackage "${agent_src}/default.nix" { };
|
||||
|
||||
15
src/main.rs
15
src/main.rs
@@ -1,6 +1,8 @@
|
||||
use libc::{
|
||||
c_int, c_void, mmap, MAP_ANON, MAP_FAILED, MAP_PRIVATE, MAP_SHARED, PROT_READ, PROT_WRITE,
|
||||
c_char, c_int, c_void, mmap, perror, MAP_FAILED, MAP_PRIVATE, MAP_SHARED, PROT_READ, PROT_WRITE,
|
||||
};
|
||||
use std::fs::File;
|
||||
use std::os::fd::AsRawFd;
|
||||
use std::{env, ptr};
|
||||
|
||||
const SHARED_MEMORY_SIZE: usize = 1024;
|
||||
@@ -45,19 +47,24 @@ fn main() {
|
||||
} as *mut u8;
|
||||
assert_ne!(sync_memory, MAP_FAILED as *mut u8);
|
||||
|
||||
let private_file = File::options()
|
||||
.read(true)
|
||||
.write(true)
|
||||
.open(&args[2])
|
||||
.expect("Cannot open KEY_FILE");
|
||||
|
||||
let private_mem = unsafe {
|
||||
mmap(
|
||||
ptr::null_mut() as *mut c_void,
|
||||
32 * 100,
|
||||
PROT_READ | PROT_WRITE,
|
||||
MAP_PRIVATE | MAP_ANON,
|
||||
0,
|
||||
MAP_SHARED,
|
||||
private_file.as_raw_fd(),
|
||||
0,
|
||||
)
|
||||
} as *mut u8;
|
||||
assert_ne!(private_mem, MAP_FAILED as *mut u8);
|
||||
|
||||
println!("Agent: starting agent...");
|
||||
unsafe {
|
||||
agent_start(shared_memory, sync_memory, private_mem);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user