Skip to content

Instantly share code, notes, and snippets.

@goose121
Created April 3, 2018 21:37
Show Gist options
  • Select an option

  • Save goose121/1ec506479e1998aa01a5c8009aff1358 to your computer and use it in GitHub Desktop.

Select an option

Save goose121/1ec506479e1998aa01a5c8009aff1358 to your computer and use it in GitHub Desktop.
Avahi bindings with invalid variable names
// This code was autogenerated with dbus-codegen-rust, see https://github.com/diwic/dbus-rs
#![allow(dead_code)]
use dbus as dbus;
use dbus::arg;
use dbus::tree;
pub trait OrgFreedesktopDBusIntrospectable {
type Err;
fn introspect(&self) -> Result<String, Self::Err>;
}
impl<'a, C: ::std::ops::Deref<Target=dbus::Connection>> OrgFreedesktopDBusIntrospectable for dbus::ConnPath<'a, C> {
type Err = dbus::Error;
fn introspect(&self) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.DBus.Introspectable".into(), &"Introspect".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let data: String = try!(i.read());
Ok(data)
}
}
pub fn org_freedesktop_dbus_introspectable_server<F, T, D>(factory: &tree::Factory<tree::MTFn<D>, D>, data: D::Interface, f: F) -> tree::Interface<tree::MTFn<D>, D>
where
D: tree::DataType,
D::Method: Default,
T: OrgFreedesktopDBusIntrospectable<Err=tree::MethodErr>,
F: 'static + for <'z> Fn(& 'z tree::MethodInfo<tree::MTFn<D>, D>) -> & 'z T,
{
let i = factory.interface("org.freedesktop.DBus.Introspectable", data);
let f = ::std::sync::Arc::new(f);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let data = try!(d.introspect());
let rm = minfo.msg.method_return();
let rm = rm.append1(data);
Ok(vec!(rm))
};
let m = factory.method("Introspect", Default::default(), h);
let m = m.out_arg(("data", "s"));
let i = i.add_m(m);
i
}
pub trait OrgFreedesktopAvahiServer {
type Err;
fn get_version_string(&self) -> Result<String, Self::Err>;
fn get_apiversion(&self) -> Result<u32, Self::Err>;
fn get_host_name(&self) -> Result<String, Self::Err>;
fn set_host_name(&self, name: &str) -> Result<(), Self::Err>;
fn get_host_name_fqdn(&self) -> Result<String, Self::Err>;
fn get_domain_name(&self) -> Result<String, Self::Err>;
fn is_nsssupport_available(&self) -> Result<bool, Self::Err>;
fn get_state(&self) -> Result<i32, Self::Err>;
fn get_local_service_cookie(&self) -> Result<u32, Self::Err>;
fn get_alternative_host_name(&self, name: &str) -> Result<String, Self::Err>;
fn get_alternative_service_name(&self, name: &str) -> Result<String, Self::Err>;
fn get_network_interface_name_by_index(&self, index: i32) -> Result<String, Self::Err>;
fn get_network_interface_index_by_name(&self, name: &str) -> Result<i32, Self::Err>;
fn resolve_host_name(&self, interface: i32, protocol: i32, name: &str, aprotocol: i32, flags: u32) -> Result<(i32, i32, String, i32, String, u32), Self::Err>;
fn resolve_address(&self, interface: i32, protocol: i32, address: &str, flags: u32) -> Result<(i32, i32, i32, String, String, u32), Self::Err>;
fn resolve_service(&self, interface: i32, protocol: i32, name: &str, type: &str, domain: &str, aprotocol: i32, flags: u32) -> Result<(i32, i32, String, String, String, String, i32, String, u16, Vec<Vec<u8>>, u32), Self::Err>;
fn entry_group_new(&self) -> Result<dbus::Path<'static>, Self::Err>;
fn domain_browser_new(&self, interface: i32, protocol: i32, domain: &str, btype: i32, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
fn service_type_browser_new(&self, interface: i32, protocol: i32, domain: &str, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
fn service_browser_new(&self, interface: i32, protocol: i32, type: &str, domain: &str, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
fn service_resolver_new(&self, interface: i32, protocol: i32, name: &str, type: &str, domain: &str, aprotocol: i32, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
fn host_name_resolver_new(&self, interface: i32, protocol: i32, name: &str, aprotocol: i32, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
fn address_resolver_new(&self, interface: i32, protocol: i32, address: &str, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
fn record_browser_new(&self, interface: i32, protocol: i32, name: &str, clazz: u16, type: u16, flags: u32) -> Result<dbus::Path<'static>, Self::Err>;
}
impl<'a, C: ::std::ops::Deref<Target=dbus::Connection>> OrgFreedesktopAvahiServer for dbus::ConnPath<'a, C> {
type Err = dbus::Error;
fn get_version_string(&self) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetVersionString".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let version: String = try!(i.read());
Ok(version)
}
fn get_apiversion(&self) -> Result<u32, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetAPIVersion".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let version: u32 = try!(i.read());
Ok(version)
}
fn get_host_name(&self) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetHostName".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let name: String = try!(i.read());
Ok(name)
}
fn set_host_name(&self, name: &str) -> Result<(), Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"SetHostName".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(name);
}));
try!(m.as_result());
Ok(())
}
fn get_host_name_fqdn(&self) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetHostNameFqdn".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let name: String = try!(i.read());
Ok(name)
}
fn get_domain_name(&self) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetDomainName".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let name: String = try!(i.read());
Ok(name)
}
fn is_nsssupport_available(&self) -> Result<bool, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"IsNSSSupportAvailable".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let yes: bool = try!(i.read());
Ok(yes)
}
fn get_state(&self) -> Result<i32, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetState".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let state: i32 = try!(i.read());
Ok(state)
}
fn get_local_service_cookie(&self) -> Result<u32, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetLocalServiceCookie".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let cookie: u32 = try!(i.read());
Ok(cookie)
}
fn get_alternative_host_name(&self, name: &str) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetAlternativeHostName".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(name);
}));
try!(m.as_result());
let mut i = m.iter_init();
let name: String = try!(i.read());
Ok(name)
}
fn get_alternative_service_name(&self, name: &str) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetAlternativeServiceName".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(name);
}));
try!(m.as_result());
let mut i = m.iter_init();
let name: String = try!(i.read());
Ok(name)
}
fn get_network_interface_name_by_index(&self, index: i32) -> Result<String, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetNetworkInterfaceNameByIndex".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(index);
}));
try!(m.as_result());
let mut i = m.iter_init();
let name: String = try!(i.read());
Ok(name)
}
fn get_network_interface_index_by_name(&self, name: &str) -> Result<i32, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"GetNetworkInterfaceIndexByName".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(name);
}));
try!(m.as_result());
let mut i = m.iter_init();
let index: i32 = try!(i.read());
Ok(index)
}
fn resolve_host_name(&self, interface: i32, protocol: i32, name: &str, aprotocol: i32, flags: u32) -> Result<(i32, i32, String, i32, String, u32), Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"ResolveHostName".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(name);
i.append(aprotocol);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: String = try!(i.read());
let aprotocol: i32 = try!(i.read());
let address: String = try!(i.read());
let flags: u32 = try!(i.read());
Ok((interface, protocol, name, aprotocol, address, flags))
}
fn resolve_address(&self, interface: i32, protocol: i32, address: &str, flags: u32) -> Result<(i32, i32, i32, String, String, u32), Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"ResolveAddress".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(address);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let aprotocol: i32 = try!(i.read());
let address: String = try!(i.read());
let name: String = try!(i.read());
let flags: u32 = try!(i.read());
Ok((interface, protocol, aprotocol, address, name, flags))
}
fn resolve_service(&self, interface: i32, protocol: i32, name: &str, type: &str, domain: &str, aprotocol: i32, flags: u32) -> Result<(i32, i32, String, String, String, String, i32, String, u16, Vec<Vec<u8>>, u32), Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"ResolveService".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(name);
i.append(type);
i.append(domain);
i.append(aprotocol);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: String = try!(i.read());
let type: String = try!(i.read());
let domain: String = try!(i.read());
let host: String = try!(i.read());
let aprotocol: i32 = try!(i.read());
let address: String = try!(i.read());
let port: u16 = try!(i.read());
let txt: Vec<Vec<u8>> = try!(i.read());
let flags: u32 = try!(i.read());
Ok((interface, protocol, name, type, domain, host, aprotocol, address, port, txt, flags))
}
fn entry_group_new(&self) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"EntryGroupNew".into(), |_| {
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn domain_browser_new(&self, interface: i32, protocol: i32, domain: &str, btype: i32, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"DomainBrowserNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(domain);
i.append(btype);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn service_type_browser_new(&self, interface: i32, protocol: i32, domain: &str, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"ServiceTypeBrowserNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(domain);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn service_browser_new(&self, interface: i32, protocol: i32, type: &str, domain: &str, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"ServiceBrowserNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(type);
i.append(domain);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn service_resolver_new(&self, interface: i32, protocol: i32, name: &str, type: &str, domain: &str, aprotocol: i32, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"ServiceResolverNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(name);
i.append(type);
i.append(domain);
i.append(aprotocol);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn host_name_resolver_new(&self, interface: i32, protocol: i32, name: &str, aprotocol: i32, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"HostNameResolverNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(name);
i.append(aprotocol);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn address_resolver_new(&self, interface: i32, protocol: i32, address: &str, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"AddressResolverNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(address);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
fn record_browser_new(&self, interface: i32, protocol: i32, name: &str, clazz: u16, type: u16, flags: u32) -> Result<dbus::Path<'static>, Self::Err> {
let mut m = try!(self.method_call_with_args(&"org.freedesktop.Avahi.Server".into(), &"RecordBrowserNew".into(), |msg| {
let mut i = arg::IterAppend::new(msg);
i.append(interface);
i.append(protocol);
i.append(name);
i.append(clazz);
i.append(type);
i.append(flags);
}));
try!(m.as_result());
let mut i = m.iter_init();
let path: dbus::Path<'static> = try!(i.read());
Ok(path)
}
}
pub fn org_freedesktop_avahi_server_server<F, T, D>(factory: &tree::Factory<tree::MTFn<D>, D>, data: D::Interface, f: F) -> tree::Interface<tree::MTFn<D>, D>
where
D: tree::DataType,
D::Method: Default,
T: OrgFreedesktopAvahiServer<Err=tree::MethodErr>,
F: 'static + for <'z> Fn(& 'z tree::MethodInfo<tree::MTFn<D>, D>) -> & 'z T,
{
let i = factory.interface("org.freedesktop.Avahi.Server", data);
let f = ::std::sync::Arc::new(f);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let version = try!(d.get_version_string());
let rm = minfo.msg.method_return();
let rm = rm.append1(version);
Ok(vec!(rm))
};
let m = factory.method("GetVersionString", Default::default(), h);
let m = m.out_arg(("version", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let version = try!(d.get_apiversion());
let rm = minfo.msg.method_return();
let rm = rm.append1(version);
Ok(vec!(rm))
};
let m = factory.method("GetAPIVersion", Default::default(), h);
let m = m.out_arg(("version", "u"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let name = try!(d.get_host_name());
let rm = minfo.msg.method_return();
let rm = rm.append1(name);
Ok(vec!(rm))
};
let m = factory.method("GetHostName", Default::default(), h);
let m = m.out_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let name: &str = try!(i.read());
let d = fclone(minfo);
try!(d.set_host_name(name));
let rm = minfo.msg.method_return();
Ok(vec!(rm))
};
let m = factory.method("SetHostName", Default::default(), h);
let m = m.in_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let name = try!(d.get_host_name_fqdn());
let rm = minfo.msg.method_return();
let rm = rm.append1(name);
Ok(vec!(rm))
};
let m = factory.method("GetHostNameFqdn", Default::default(), h);
let m = m.out_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let name = try!(d.get_domain_name());
let rm = minfo.msg.method_return();
let rm = rm.append1(name);
Ok(vec!(rm))
};
let m = factory.method("GetDomainName", Default::default(), h);
let m = m.out_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let yes = try!(d.is_nsssupport_available());
let rm = minfo.msg.method_return();
let rm = rm.append1(yes);
Ok(vec!(rm))
};
let m = factory.method("IsNSSSupportAvailable", Default::default(), h);
let m = m.out_arg(("yes", "b"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let state = try!(d.get_state());
let rm = minfo.msg.method_return();
let rm = rm.append1(state);
Ok(vec!(rm))
};
let m = factory.method("GetState", Default::default(), h);
let m = m.out_arg(("state", "i"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let cookie = try!(d.get_local_service_cookie());
let rm = minfo.msg.method_return();
let rm = rm.append1(cookie);
Ok(vec!(rm))
};
let m = factory.method("GetLocalServiceCookie", Default::default(), h);
let m = m.out_arg(("cookie", "u"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let name: &str = try!(i.read());
let d = fclone(minfo);
let name = try!(d.get_alternative_host_name(name));
let rm = minfo.msg.method_return();
let rm = rm.append1(name);
Ok(vec!(rm))
};
let m = factory.method("GetAlternativeHostName", Default::default(), h);
let m = m.in_arg(("name", "s"));
let m = m.out_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let name: &str = try!(i.read());
let d = fclone(minfo);
let name = try!(d.get_alternative_service_name(name));
let rm = minfo.msg.method_return();
let rm = rm.append1(name);
Ok(vec!(rm))
};
let m = factory.method("GetAlternativeServiceName", Default::default(), h);
let m = m.in_arg(("name", "s"));
let m = m.out_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let index: i32 = try!(i.read());
let d = fclone(minfo);
let name = try!(d.get_network_interface_name_by_index(index));
let rm = minfo.msg.method_return();
let rm = rm.append1(name);
Ok(vec!(rm))
};
let m = factory.method("GetNetworkInterfaceNameByIndex", Default::default(), h);
let m = m.in_arg(("index", "i"));
let m = m.out_arg(("name", "s"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let name: &str = try!(i.read());
let d = fclone(minfo);
let index = try!(d.get_network_interface_index_by_name(name));
let rm = minfo.msg.method_return();
let rm = rm.append1(index);
Ok(vec!(rm))
};
let m = factory.method("GetNetworkInterfaceIndexByName", Default::default(), h);
let m = m.in_arg(("name", "s"));
let m = m.out_arg(("index", "i"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: &str = try!(i.read());
let aprotocol: i32 = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let (interface, protocol, name, aprotocol, address, flags) = try!(d.resolve_host_name(interface, protocol, name, aprotocol, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(interface);
let rm = rm.append1(protocol);
let rm = rm.append1(name);
let rm = rm.append1(aprotocol);
let rm = rm.append1(address);
let rm = rm.append1(flags);
Ok(vec!(rm))
};
let m = factory.method("ResolveHostName", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("name", "s"));
let m = m.in_arg(("aprotocol", "i"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("interface", "i"));
let m = m.out_arg(("protocol", "i"));
let m = m.out_arg(("name", "s"));
let m = m.out_arg(("aprotocol", "i"));
let m = m.out_arg(("address", "s"));
let m = m.out_arg(("flags", "u"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let address: &str = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let (interface, protocol, aprotocol, address, name, flags) = try!(d.resolve_address(interface, protocol, address, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(interface);
let rm = rm.append1(protocol);
let rm = rm.append1(aprotocol);
let rm = rm.append1(address);
let rm = rm.append1(name);
let rm = rm.append1(flags);
Ok(vec!(rm))
};
let m = factory.method("ResolveAddress", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("address", "s"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("interface", "i"));
let m = m.out_arg(("protocol", "i"));
let m = m.out_arg(("aprotocol", "i"));
let m = m.out_arg(("address", "s"));
let m = m.out_arg(("name", "s"));
let m = m.out_arg(("flags", "u"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: &str = try!(i.read());
let type: &str = try!(i.read());
let domain: &str = try!(i.read());
let aprotocol: i32 = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let (interface, protocol, name, type, domain, host, aprotocol, address, port, txt, flags) = try!(d.resolve_service(interface, protocol, name, type, domain, aprotocol, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(interface);
let rm = rm.append1(protocol);
let rm = rm.append1(name);
let rm = rm.append1(type);
let rm = rm.append1(domain);
let rm = rm.append1(host);
let rm = rm.append1(aprotocol);
let rm = rm.append1(address);
let rm = rm.append1(port);
let rm = rm.append1(txt);
let rm = rm.append1(flags);
Ok(vec!(rm))
};
let m = factory.method("ResolveService", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("name", "s"));
let m = m.in_arg(("type", "s"));
let m = m.in_arg(("domain", "s"));
let m = m.in_arg(("aprotocol", "i"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("interface", "i"));
let m = m.out_arg(("protocol", "i"));
let m = m.out_arg(("name", "s"));
let m = m.out_arg(("type", "s"));
let m = m.out_arg(("domain", "s"));
let m = m.out_arg(("host", "s"));
let m = m.out_arg(("aprotocol", "i"));
let m = m.out_arg(("address", "s"));
let m = m.out_arg(("port", "q"));
let m = m.out_arg(("txt", "aay"));
let m = m.out_arg(("flags", "u"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let d = fclone(minfo);
let path = try!(d.entry_group_new());
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("EntryGroupNew", Default::default(), h);
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let domain: &str = try!(i.read());
let btype: i32 = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.domain_browser_new(interface, protocol, domain, btype, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("DomainBrowserNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("domain", "s"));
let m = m.in_arg(("btype", "i"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let domain: &str = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.service_type_browser_new(interface, protocol, domain, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("ServiceTypeBrowserNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("domain", "s"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let type: &str = try!(i.read());
let domain: &str = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.service_browser_new(interface, protocol, type, domain, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("ServiceBrowserNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("type", "s"));
let m = m.in_arg(("domain", "s"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: &str = try!(i.read());
let type: &str = try!(i.read());
let domain: &str = try!(i.read());
let aprotocol: i32 = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.service_resolver_new(interface, protocol, name, type, domain, aprotocol, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("ServiceResolverNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("name", "s"));
let m = m.in_arg(("type", "s"));
let m = m.in_arg(("domain", "s"));
let m = m.in_arg(("aprotocol", "i"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: &str = try!(i.read());
let aprotocol: i32 = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.host_name_resolver_new(interface, protocol, name, aprotocol, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("HostNameResolverNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("name", "s"));
let m = m.in_arg(("aprotocol", "i"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let address: &str = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.address_resolver_new(interface, protocol, address, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("AddressResolverNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("address", "s"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
let fclone = f.clone();
let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| {
let mut i = minfo.msg.iter_init();
let interface: i32 = try!(i.read());
let protocol: i32 = try!(i.read());
let name: &str = try!(i.read());
let clazz: u16 = try!(i.read());
let type: u16 = try!(i.read());
let flags: u32 = try!(i.read());
let d = fclone(minfo);
let path = try!(d.record_browser_new(interface, protocol, name, clazz, type, flags));
let rm = minfo.msg.method_return();
let rm = rm.append1(path);
Ok(vec!(rm))
};
let m = factory.method("RecordBrowserNew", Default::default(), h);
let m = m.in_arg(("interface", "i"));
let m = m.in_arg(("protocol", "i"));
let m = m.in_arg(("name", "s"));
let m = m.in_arg(("clazz", "q"));
let m = m.in_arg(("type", "q"));
let m = m.in_arg(("flags", "u"));
let m = m.out_arg(("path", "o"));
let i = i.add_m(m);
i
}
#[derive(Debug, Default)]
pub struct OrgFreedesktopAvahiServerStateChanged {
pub state: i32,
pub error: String,
}
impl dbus::SignalArgs for OrgFreedesktopAvahiServerStateChanged {
const NAME: &'static str = "StateChanged";
const INTERFACE: &'static str = "org.freedesktop.Avahi.Server";
fn append(&self, i: &mut arg::IterAppend) {
(&self.state as &arg::RefArg).append(i);
(&self.error as &arg::RefArg).append(i);
}
fn get(&mut self, i: &mut arg::Iter) -> Result<(), arg::TypeMismatchError> {
self.state = try!(i.read());
self.error = try!(i.read());
Ok(())
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment