+/*!
+ @function kev_vendor_code_find
+ @discussion Lookup a vendor_code given a unique string. If the vendor code
+ has not been used since launch, a unique integer will be assigned for
+ that string. Vendor codes will remain the same until the machine is
+ rebooted.
+ @param vendor_string A bundle style vendor identifier (i.e. com.apple).
+ @param vendor_code Upon return, a unique vendor code for use when posting
+ kernel events.
+ @result May return ENOMEM if memory constraints prevent allocation of a new
+ vendor code.
+ */
+errno_t kev_vendor_code_find(const char *vendor_string, u_int32_t *vendor_code);
+
+/*!
+ @function kev_msg_post
+ @discussion Post a kernel event message.
+ @param event_msg A structure defining the kernel event message to post.
+ @result Will return zero upon success. May return a number of errors
+ depending on the type of failure. EINVAL indicates that there was
+ something wrong with the kerne event. The vendor code of the kernel
+ event must be assigned using kev_vendor_code_find. If the message is
+ too large, EMSGSIZE will be returned.
+ */
+errno_t kev_msg_post(struct kev_msg *event_msg);