--- master\ioctl.c	2013-02-12 16:46:44.000000000 +0200
+++ master\ioctl.c	2013-08-05 06:38:34.000000000 +0200
@@ -1824,11 +1824,15 @@
         )
 {
     if (unlikely(!ctx->requested)) {
         return -EPERM;
     }
 
+    if(master->send_cb != NULL)
+       master->send_cb(master->cb_data);
+    else
     ecrt_master_send(master);
 
     return 0;
 }
 
 /*****************************************************************************/
@@ -1844,11 +1848,15 @@
         )
 {
     if (unlikely(!ctx->requested)) {
         return -EPERM;
     }
 
+    if(master->receive_cb != NULL)
+       master->receive_cb(master->cb_data);
+    else
     ecrt_master_receive(master);
 
     return 0;
 }
 
 /*****************************************************************************/
