summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2018-07-06 13:57:01 +0300
committerYuval Adam <_@yuv.al>2018-07-06 13:57:01 +0300
commit25b213dad9945ea990320a9e0996134a523d58e5 (patch)
treeda7bb0f2dc5102b994b1f480e70aeddd4152340d
parentf3cbf765bc653a980ce204bedbdd203a53934bbc (diff)
Attempt to get interface not workinggssdp
-rw-r--r--src/upnp.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/upnp.rs b/src/upnp.rs
index fc3cd2c..b142258 100644
--- a/src/upnp.rs
+++ b/src/upnp.rs
@@ -1,14 +1,21 @@
extern crate libc;
use self::libc::{uint32_t, uint16_t, uint8_t, c_char, c_uchar, c_int, c_void};
+use std::ptr;
pub type GSSDPClient = *mut c_void;
#[link(name = "gssdp-1.0")]
extern {
pub fn gssdp_client_new(main_context: *mut c_void, iface: *const c_char, error: *mut c_void) -> GSSDPClient;
+ pub fn gssdp_client_get_interface(client: *mut GSSDPClient) -> *const c_char;
}
pub fn discover() {
println!("Discovering...");
+ unsafe {
+ let mut client = gssdp_client_new(ptr::null_mut(), ptr::null(), ptr::null_mut());
+ let iface = gssdp_client_get_interface(&client);
+ }
+ println!("Using interface: {}", iface);
}