• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/syslog-217.1.4/syslogd.tproj/

Lines Matching refs:fdata

375 		asl_action_file_data_t *fdata = (asl_action_file_data_t *)r->dst->private;
376 if (fdata->fd >= 0) close(fdata->fd);
377 fdata->fd = -1;
379 if (fdata->monitor != NULL)
381 dispatch_source_cancel(fdata->monitor);
382 dispatch_release(fdata->monitor);
383 fdata->monitor = NULL;
645 _asl_action_file_data_free(asl_action_file_data_t *fdata)
647 if (fdata == NULL) return;
649 if (fdata->dup_timer != NULL)
651 if (fdata->last_count == 0)
658 dispatch_resume(fdata->dup_timer);
661 dispatch_release(fdata->dup_timer);
664 free(fdata->last_msg);
665 if (fdata->fd >= 0) close(fdata->fd);
666 free(fdata);
834 asl_action_file_data_t *fdata;
843 fdata = (asl_action_file_data_t *)r->dst->private;
845 free(fdata->last_msg);
846 fdata->last_msg = NULL;
848 if (fdata->last_count == 0) return 0;
851 dispatch_suspend(fdata->dup_timer);
858 asprintf(&msg, "%s --- last message repeated %u time%s ---\n", vt + 4, fdata->last_count, (fdata->last_count == 1) ? "" : "s");
859 fdata->last_count = 0;
860 fdata->last_time = now;
863 if (fdata->fd < 0) fdata->fd = asl_out_dst_file_create_open(r->dst);
866 status = write(fdata->fd, msg, len);
881 asl_action_file_data_t *fdata;
887 fdata = (asl_action_file_data_t *)r->dst->private;
888 if (fdata->fd < 0)
890 fdata->fd = asl_out_dst_file_create_open(r->dst);
891 if (fdata->fd < 0)
899 fdata->fd = asl_out_dst_file_create_open(r->dst);
902 if (fdata->fd >= 0)
904 fdata->monitor = dispatch_source_create(DISPATCH_SOURCE_TYPE_VNODE, fdata->fd, DISPATCH_VNODE_DELETE, asl_action_queue);
905 if (fdata->monitor != NULL)
907 dispatch_source_set_event_handler(fdata->monitor, ^{ _act_dst_close(r); });
908 dispatch_resume(fdata->monitor);
913 return fdata->fd;
1029 asl_action_file_data_t *fdata;
1046 fdata = (asl_action_file_data_t *)r->dst->private;
1056 if (fdata->dup_timer == NULL)
1059 fdata->dup_timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, asl_action_queue);
1060 dispatch_source_set_event_handler(fdata->dup_timer, ^{ _send_repeat_msg(r); });
1063 if ((global.bsd_max_dup_time > 0) && (str != NULL) && (fdata->last_msg != NULL))
1066 if ((fdata->last_hash == msg_hash) && (!strcmp(fdata->last_msg, str + 16)))
1068 if ((now - fdata->last_time) < global.bsd_max_dup_time) is_dup = 1;
1075 if (fdata->last_count == 0)
1078 dispatch_source_set_timer(fdata->dup_timer, dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_SEC * global.bsd_max_dup_time), DISPATCH_TIME_FOREVER, 0);
1079 dispatch_resume(fdata->dup_timer);
1082 fdata->last_count++;
1098 * The current message is not a duplicate. If fdata->last_count > 0
1103 if (fdata->last_count > 0)
1109 free(fdata->last_msg);
1110 fdata->last_msg = NULL;
1135 if (str != NULL) fdata->last_msg = strdup(str + 16);
1137 fdata->last_hash = msg_hash;
1138 fdata->last_count = 0;
1139 fdata->last_time = now;
1144 size_t bytes = write(fdata->fd, str, len - 1);
1733 asl_action_file_data_t *fdata = (asl_action_file_data_t *)r->dst->private;
1734 if (fdata != NULL)
1737 if (fdata->last_count > 0) _send_repeat_msg(r);
1738 _asl_action_file_data_free(fdata);
1814 asl_action_file_data_t *fdata = (asl_action_file_data_t *)r->dst->private;
1815 if ((fdata != NULL) && (fdata->fd >= 0) && ((now - fdata->last_time) >= idle_time)) _act_dst_close(r);