X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fsocketengine.h;h=729f5e0909a8fb66275857bb28cd5bd1c8f8fb57;hb=3ec7995bf4981119115d14ce2cfce0cb5795f803;hp=55f8516f9f6057ac521a9af0beac201b61eda658;hpb=696ee9ff66bb94be2229bfa9c3dc288affc38a72;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/socketengine.h b/include/socketengine.h index 55f8516f9..729f5e090 100644 --- a/include/socketengine.h +++ b/include/socketengine.h @@ -94,7 +94,7 @@ class EventHandler : public Extensible * is still added to a SocketEngine instance! * If this function is unimplemented, the base class * will return true. - * + * * NOTE: You cannot set both Readable() and * Writeable() to true. If you wish to receive * a write event for your object, you must call @@ -224,10 +224,18 @@ public: * and false if it failed. This does not free the * EventHandler pointer using delete, if this is * required you must do this yourself. + * Note on forcing deletes. DO NOT DO THIS! This is + * extremely dangerous and will most likely render the + * socketengine dead. This was added only for handling + * very rare cases where broken 3rd party libs destroys + * the OS socket beyond our control. If you can't explain + * in minute details why forcing is absolutely necessary + * then you don't need it. That was a NO! * @param eh The event handler object to remove + * @param force *DANGEROUS* See method description! * @return True if the event handler was removed */ - virtual bool DelFd(EventHandler* eh); + virtual bool DelFd(EventHandler* eh, bool force = false); /** Returns true if a file descriptor exists in * the socket engine's list.