Fix bug #7067 - Linux asynchronous IO (aio) can cause smbd to fail to respond to...
[amitay/samba.git] / source3 / include / module.h
index 759ea5bb385b64858fd35e8f0007bcdf4f1a9f46..52245e01d2ac3a21cd9701f2cd340b344010a4b7 100644 (file)
@@ -5,7 +5,7 @@
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
@@ -14,8 +14,7 @@
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #ifndef _MODULE_H
 /* Module support */
 typedef NTSTATUS (init_module_function) (void);
 
+NTSTATUS init_samba_module(void);
+
+typedef int smb_event_id_t;
+#define SMB_EVENT_ID_INVALID   (-1)
+
 #define SMB_IDLE_EVENT_DEFAULT_INTERVAL        180
 #define SMB_IDLE_EVENT_MIN_INTERVAL    30
 
-typedef struct smb_idle_event_struct {
-       struct smb_idle_event_struct *prev,*next;
-       time_t interval;
-       time_t last_run;
-       void *data;
-       void (*fn)(struct smb_idle_event_struct **event, time_t now);
-} smb_idle_event_struct;
-
-typedef struct smb_exit_event_struct {
-       struct smb_exit_event_struct *prev,*next;
-       void *data;
-       void (*fn)(struct smb_exit_event_struct **event);
-} smb_exit_event_struct;
+typedef void (smb_idle_event_fn)(void **data,time_t *interval,time_t now);
 
 #endif /* _MODULE_H */