Lines Matching defs:iovec
591 struct iovec *iovec,
602 assert(iovec);
624 IOVEC_SET_STRING(iovec[n_iovec++], coredump_filename);
657 IOVEC_SET_STRING(iovec[n_iovec++], core_message);
668 iovec[n_iovec].iov_base = coredump_data;
669 iovec[n_iovec].iov_len = sz;
676 r = sd_journal_sendv(iovec, n_iovec);
683 static void map_context_fields(const struct iovec *iovec, const char *context[]) {
698 assert(iovec);
705 if (iovec->iov_len < l)
708 if (memcmp(iovec->iov_base, context_field_names[i], l) != 0)
713 context[i] = (char*) iovec->iov_base + l;
720 struct iovec *iovec = NULL;
744 if (!GREEDY_REALLOC(iovec, n_iovec_allocated, n_iovec + 3)) {
756 iovec[n_iovec].iov_len = l;
757 iovec[n_iovec].iov_base = malloc(l + 1);
759 if (!iovec[n_iovec].iov_base) {
764 mh.msg_iov = iovec + n_iovec;
768 free(iovec[n_iovec].iov_base);
777 free(iovec[n_iovec].iov_base);
800 ((char*) iovec[n_iovec].iov_base)[n] = 0;
801 iovec[n_iovec].iov_len = (size_t) n;
804 map_context_fields(iovec + n_iovec, context);
808 if (!GREEDY_REALLOC(iovec, n_iovec_allocated, n_iovec + 3)) {
823 r = submit_coredump(context, iovec, n_iovec_allocated, n_iovec, coredump_fd);
827 free(iovec[i].iov_base);
828 free(iovec);
833 static int send_iovec(const struct iovec iovec[], size_t n_iovec, int input_fd) {
843 assert(iovec || n_iovec <= 0);
855 assert(iovec[i].iov_len > 0);
857 n = send(fd, iovec[i].iov_base, iovec[i].iov_len, MSG_NOSIGNAL);
911 struct iovec iovec[25];
959 IOVEC_SET_STRING(iovec[n_iovec++], core_unit);
970 IOVEC_SET_STRING(iovec[n_iovec++], core_user_unit);
974 IOVEC_SET_STRING(iovec[n_iovec++], core_pid);
977 IOVEC_SET_STRING(iovec[n_iovec++], core_uid);
980 IOVEC_SET_STRING(iovec[n_iovec++], core_gid);
983 IOVEC_SET_STRING(iovec[n_iovec++], core_signal);
986 IOVEC_SET_STRING(iovec[n_iovec++], core_rlimit);
992 IOVEC_SET_STRING(iovec[n_iovec++], core_session);
998 IOVEC_SET_STRING(iovec[n_iovec++], core_owner_uid);
1005 IOVEC_SET_STRING(iovec[n_iovec++], core_slice);
1010 IOVEC_SET_STRING(iovec[n_iovec++], core_comm);
1015 IOVEC_SET_STRING(iovec[n_iovec++], core_exe);
1022 IOVEC_SET_STRING(iovec[n_iovec++], core_cmdline);
1029 IOVEC_SET_STRING(iovec[n_iovec++], core_cgroup);
1037 IOVEC_SET_STRING(iovec[n_iovec++], core_open_fds);
1046 IOVEC_SET_STRING(iovec[n_iovec++], core_proc_status);
1055 IOVEC_SET_STRING(iovec[n_iovec++], core_proc_maps);
1064 IOVEC_SET_STRING(iovec[n_iovec++], core_proc_limits);
1073 IOVEC_SET_STRING(iovec[n_iovec++], core_proc_cgroup);
1080 IOVEC_SET_STRING(iovec[n_iovec++], core_cwd);
1087 IOVEC_SET_STRING(iovec[n_iovec++], core_root);
1095 IOVEC_SET_STRING(iovec[n_iovec++], core_environ);
1099 IOVEC_SET_STRING(iovec[n_iovec++], core_timestamp);
1101 IOVEC_SET_STRING(iovec[n_iovec++], "MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1");
1104 IOVEC_SET_STRING(iovec[n_iovec++], "PRIORITY=2");
1106 assert(n_iovec <= ELEMENTSOF(iovec));
1108 return send_iovec(iovec, n_iovec, STDIN_FILENO);