An AF_UNIX server.
The Efl.Net.Server.serve method will call bind(2) directly. This means the path will be accessed and created in that method. If the created socket must be subject to some special mode or user, change before executing said method, for example by calling umask(2).
⇒ Efl.Net.Server_Fd (class) ⇒ Efl.Loop_Fd (class) ⇒ Efl.Loop_Consumer (class) ⇒ Efl.Object (class)
destructor [Overridden from Efl.Object]
Implement this method to provide deinitialization code for your object if you need it.
void efl_destructor(Eo *obj);
leading_directories_create (get, set)
Iftrue
, all parent directories will be created with the given mode.
void efl_net_server_unix_leading_directories_create_get(const Eo *obj, Eina_Bool *leading_directories_create, unsigned int *mode); void efl_net_server_unix_leading_directories_create_set(Eo *obj, Eina_Bool leading_directories_create, unsigned int mode);
serve [Overridden from Efl.Net.Server]
Starts serving requests.
Eina_Error efl_net_server_serve(Eo *obj, const char *address);
socket_activate [Overridden from Efl.Net.Server_Fd]
If this method is called, use an already activated socket.
Eina_Error efl_net_server_fd_socket_activate(Eo *obj, const char *address);
unlink_before_bind (get, set)
AF_UNIX paths may be stale due to crashes. Remove files and try again.
Eina_Bool efl_net_server_unix_unlink_before_bind_get(const Eo *obj); void efl_net_server_unix_unlink_before_bind_set(Eo *obj, Eina_Bool unlink_before_bind);
client_add protected
[Overridden from Efl.Net.Server_Fd]
Accepts a new client, should emit "client,add".
void efl_net_server_fd_client_add(Eo *obj, int client_fd);
client_reject protected
[Overridden from Efl.Net.Server_Fd]
Rejects a new client, should emit "client,rejected".
void efl_net_server_fd_client_reject(Eo *obj, int client_fd);
Efl.Loop_Consumer | ||
---|---|---|
future_rejected | Creates a new future that is already rejected to a specified error using the Efl.Loop_Consumer.loop.get. | |
future_resolved | Creates a new future that is already resolved to a value. | |
loop (get) | ||
promise_new | Create a new promise with the scheduler coming from the loop provided by this object. | |
Efl.Loop_Fd | ||
fd_file (get, set) | Defines which file descriptor to watch when watching a file. | |
invalidate | Implement this method to perform special actions when your object loses its parent, if you need to. | |
parent (get, set) | The parent of an object. | |
Efl.Net.Server_Fd | ||
protected set | address (get, set) | The address to which the server is bound. |
protected set | clients_count (get, set) | Number of concurrent clients accepted by the server. |
clients_limit (get, set) | Number of maximum concurrent clients allowed by the server. | |
close_on_exec (get, set) | Controls Close-on-Exec() using FD_CLOEXEC. | |
constructor | Implement this method to provide optional initialization code for your object. | |
protected set | family (get, set) | The address family (AF_*) family of this socket. |
fd (get, set) | Defines which file descriptor to watch. If it is a file, use file_fd variant. | |
finalize | Implement this method to finish the initialization of your object after all (if any) user-provided configuration methods have been executed. | |
reuse_address (get, set) | Controls address reuse() using SO_REUSEADDR | |
reuse_port (get, set) | Controls port reuse() using SO_REUSEPORT (since linux 3.9) | |
protected set | serving (get, set) | Returns whenever the server is ready to accept clients or not. |
protected | client_announce | Implementions should call this method to announce new clients. |
protected | process_incoming_data | When the socket has data to be read, process it. |
Efl.Object | ||
allow_parent_unref (get, set) | Allow an object to be deleted by unref even if it has a parent. | |
children_iterator_new | Get an iterator on all children. | |
comment (get, set) | A human readable comment for the object. | |
composite_attach | Make an object a composite object of another. | |
composite_detach | Detach a composite object from another object. | |
composite_part_is | Check if an object is part of a composite object. | |
debug_name_override | Build a read-only name for this object used for debugging. | |
event_callback_forwarder_del | Remove an event callback forwarder for a specified event and object. | |
event_callback_forwarder_priority_add | Add an event callback forwarder that will make this object emit an event whenever another object (source ) emits it. The event is said to be forwarded from source to this object. |
|
event_callback_stop | Stop the current callback call. | |
event_freeze | Freeze events of this object. | |
event_freeze_count (get) | ||
static | event_global_freeze | Globally freeze events for ALL EFL OBJECTS. |
static | event_global_freeze_count (get) | |
static | event_global_thaw | Globally thaw events for ALL EFL OBJECTS. |
event_thaw | Thaw events of object. | |
finalized (get) | ||
invalidated (get) | ||
invalidating (get) | ||
name (get, set) | The name of the object. | |
name_find | Find a child object with the given name and return it. | |
provider_find | Searches upwards in the object tree for a provider which knows the given class/interface. | |
provider_register | Will register a manager of a specific class to be answered by Efl.Object.provider_find. | |
provider_unregister | Will unregister a manager of a specific class that was previously registered and answered by Efl.Object.provider_find. |
Efl.Loop_Fd | ||
---|---|---|
error | Called when a error occurred on the file descriptor | |
read | Called when a read happened on the file descriptor | |
write | Called when a write happened on the file descriptor | |
Efl.Net.Server | ||
client,add | A new client socket has been created. | |
client,rejected | Notifies a client was rejected due excess, see Efl.Net.Server.clients_limit. | |
server,error | An error has occurred and the server needs to be stopped. | |
serving | Notifies the server is ready to accept clients. See property Efl.Net.Server.serving | |
Efl.Object | ||
del | Object is being deleted. See Efl.Object.destructor. | |
destruct | Object has been fully destroyed. It can not be used beyond this point. This event should only serve to clean up any reference you keep to the object. | |
invalidate | Object is being invalidated and losing its parent. See Efl.Object.invalidate. | |
noref | Object has lost its last reference, only parent relationship is keeping it alive. Advanced usage. | |
ownership,shared | Object has acquired a second reference. It has multiple owners now. Triggered whenever increasing the refcount from one to two, it will not trigger by further increasing the refcount beyond two. | |
ownership,unique | Object has lost a reference and only one is left. It has just one owner now. Triggered whenever the refcount goes from two to one. |