Struct SCNetworkService

Source
#[repr(C)]
pub struct SCNetworkService { /* private fields */ }
Available on crate feature SCNetworkConfiguration only.
Expand description

This is the type of a reference to an object that represents a network service.

See also Apple’s documentation

Implementations§

Source§

impl SCNetworkService

Source

pub fn add_protocol_type( self: &SCNetworkService, protocol_type: &CFString, ) -> bool

Adds a network protocol of the specified type to the service. The protocol configuration is set to default values that are appropriate for the interface associated with the service.

Parameter service: The network service.

Parameter protocolType: The type of SCNetworkProtocol to be added to the service.

Returns: TRUE if the protocol was added to the service; FALSE if the protocol was already present or an error was encountered.

Source

pub fn all(prefs: &SCPreferences) -> Option<CFRetained<CFArray>>

Available on crate feature SCPreferences only.

Returns all available network services for the specified preferences.

Parameter prefs: The “preferences” session.

Returns: The list of SCNetworkService services associated with the preferences. You must release the returned value.

Source

pub fn protocols(self: &SCNetworkService) -> Option<CFRetained<CFArray>>

Returns all network protocols associated with the service.

Parameter service: The network service.

Returns: The list of SCNetworkProtocol protocols associated with the service. You must release the returned value.

Source

pub fn new( prefs: &SCPreferences, interface: &SCNetworkInterface, ) -> Option<CFRetained<SCNetworkService>>

Available on crate feature SCPreferences only.

Create a new network service for the specified interface in the configuration.

Parameter prefs: The “preferences” session.

Returns: A reference to the new SCNetworkService. You must release the returned value.

Source

pub fn copy( prefs: &SCPreferences, service_id: &CFString, ) -> Option<CFRetained<SCNetworkService>>

Available on crate feature SCPreferences only.

Returns the network service with the specified identifier.

Parameter prefs: The “preferences” session.

Parameter serviceID: The unique identifier for the service.

Returns: A reference to the SCNetworkService from the associated preferences; NULL if the serviceID does not exist in the preferences or if an error was encountered. You must release the returned value.

Source

pub fn establish_default_configuration(self: &SCNetworkService) -> bool

Establishes the “default” configuration for a network service. This configuration includes the addition of network protocols for the service (with “default” configuration options).

Parameter service: The network service.

Returns: TRUE if the configuration was updated; FALSE if an error was encountered.

Source

pub fn enabled(self: &SCNetworkService) -> bool

Returns whether this service has been enabled.

Parameter service: The network service.

Returns: TRUE if the service is enabled.

Source

pub fn interface( self: &SCNetworkService, ) -> Option<CFRetained<SCNetworkInterface>>

Returns the network interface associated with the service.

Parameter service: The network service.

Returns: A reference to the SCNetworkInterface associated with the service; NULL if an error was encountered.

Source

pub fn name(self: &SCNetworkService) -> Option<CFRetained<CFString>>

Returns the [user specified] name associated with the service.

Parameter service: The network service.

Returns: The [user specified] name.

Source

pub fn protocol( self: &SCNetworkService, protocol_type: &CFString, ) -> Option<CFRetained<SCNetworkProtocol>>

Returns the network protocol of the specified type for the service.

Parameter service: The network service.

Returns: A reference to the SCNetworkProtocol associated with the service; NULL if this protocol has not been added or if an error was encountered. You must release the returned value.

Source

pub fn service_id(self: &SCNetworkService) -> Option<CFRetained<CFString>>

Returns the identifier for the service.

Parameter service: The network service.

Returns: The service identifier.

Source

pub fn remove(self: &SCNetworkService) -> bool

Removes the network service from the configuration.

Parameter service: The network service.

Returns: TRUE if the service was removed; FALSE if an error was encountered.

Source

pub fn remove_protocol_type( self: &SCNetworkService, protocol_type: &CFString, ) -> bool

Removes the network protocol of the specified type from the service.

Parameter service: The network service.

Parameter protocolType: The type of SCNetworkProtocol to be removed from the service.

Returns: TRUE if the protocol was removed to the service; FALSE if the protocol was not configured or an error was encountered.

Source

pub fn set_enabled(self: &SCNetworkService, enabled: bool) -> bool

Enables or disables the service.

Parameter service: The network service.

Parameter enabled: TRUE if the service should be enabled.

Returns: TRUE if the enabled status was saved; FALSE if an error was encountered.

Source

pub fn set_name(self: &SCNetworkService, name: Option<&CFString>) -> bool

Stores the [user specified] name for the service.

Parameter service: The network service.

Parameter name: The [user defined] name to associate with the service.

Returns: TRUE if the name was saved; FALSE if an error was encountered.

Note: although not technically required, the [user specified] names for all services within any given set should be unique. As such, an error will be returned if you attemp to name two services with the same string.

Methods from Deref<Target = CFType>§

Source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: ConcreteType,

Attempt to downcast the type to that of type T.

This is the reference-variant. Use CFRetained::downcast if you want to convert a retained type. See also ConcreteType for more details on which types support being converted to.

Source

pub fn retain_count(&self) -> usize

Get the reference count of the object.

This function may be useful for debugging. You normally do not use this function otherwise.

Beware that some things (like CFNumbers, small CFStrings etc.) may not have a normal retain count for optimization purposes, and can return usize::MAX in that case.

Trait Implementations§

Source§

impl AsRef<AnyObject> for SCNetworkService

Source§

fn as_ref(&self) -> &AnyObject

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<CFType> for SCNetworkService

Source§

fn as_ref(&self) -> &CFType

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<SCNetworkService> for SCNetworkService

Source§

fn as_ref(&self) -> &Self

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Borrow<AnyObject> for SCNetworkService

Source§

fn borrow(&self) -> &AnyObject

Immutably borrows from an owned value. Read more
Source§

impl Borrow<CFType> for SCNetworkService

Source§

fn borrow(&self) -> &CFType

Immutably borrows from an owned value. Read more
Source§

impl ConcreteType for SCNetworkService

Source§

fn type_id() -> CFTypeID

Returns the type identifier of all SCNetworkService instances.

Source§

impl Debug for SCNetworkService

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for SCNetworkService

Source§

type Target = CFType

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Hash for SCNetworkService

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Message for SCNetworkService

Source§

fn retain(&self) -> Retained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

impl PartialEq for SCNetworkService

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl RefEncode for SCNetworkService

Source§

const ENCODING_REF: Encoding

The Objective-C type-encoding for a reference of this type. Read more
Source§

impl Type for SCNetworkService

Source§

fn retain(&self) -> CFRetained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

fn as_concrete_TypeRef(&self) -> &Self

👎Deprecated: this is redundant
Helper for easier transition from the core-foundation crate.
Source§

unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>
where Self: Sized,

👎Deprecated: use CFRetained::retain
Helper for easier transition from the core-foundation crate. Read more
Source§

fn as_CFTypeRef(&self) -> &CFType
where Self: AsRef<CFType>,

👎Deprecated: this is redundant (CF types deref to CFType)
Helper for easier transition from the core-foundation crate.
Source§

unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>
where Self: Sized,

👎Deprecated: use CFRetained::from_raw
Helper for easier transition from the core-foundation crate. Read more
Source§

impl Eq for SCNetworkService

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> AutoreleaseSafe for T
where T: ?Sized,