1*c9192196Sxsa /* $OpenBSD: trigger.h,v 1.2 2008/06/10 05:29:14 xsa Exp $ */ 2b034d592Sjoris /* 3b034d592Sjoris * Copyright (c) 2008 Tobias Stoeckmann <tobias@openbsd.org> 4b034d592Sjoris * Copyright (c) 2008 Jonathan Armani <dbd@asystant.net> 5b034d592Sjoris * 6b034d592Sjoris * Permission to use, copy, modify, and distribute this software for any 7b034d592Sjoris * purpose with or without fee is hereby granted, provided that the above 8b034d592Sjoris * copyright notice and this permission notice appear in all copies. 9b034d592Sjoris * 10b034d592Sjoris * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11b034d592Sjoris * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12b034d592Sjoris * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13b034d592Sjoris * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14b034d592Sjoris * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15b034d592Sjoris * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16b034d592Sjoris * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17b034d592Sjoris */ 18b034d592Sjoris 19b034d592Sjoris #define CVS_TRIGGER_COMMITINFO 1 20b034d592Sjoris #define CVS_TRIGGER_LOGINFO 2 21b034d592Sjoris #define CVS_TRIGGER_VERIFYMSG 3 22b034d592Sjoris #define CVS_TRIGGER_RCSINFO 4 23b034d592Sjoris #define CVS_TRIGGER_EDITINFO 5 24b034d592Sjoris #define CVS_TRIGGER_TAGINFO 6 25b034d592Sjoris 26b034d592Sjoris struct trigger_line { 27b034d592Sjoris char *line; 28b034d592Sjoris TAILQ_ENTRY(trigger_line) flist; 29b034d592Sjoris }; 30b034d592Sjoris 31b034d592Sjoris TAILQ_HEAD(trigger_list, trigger_line); 32b034d592Sjoris 33b034d592Sjoris struct file_info { 34b034d592Sjoris char *file_path; 35b034d592Sjoris char *file_wd; 36b034d592Sjoris char *crevstr; 37b034d592Sjoris char *nrevstr; 38b034d592Sjoris char *tag_new; 39b034d592Sjoris char *tag_old; 40b034d592Sjoris char *tag_op; 41b034d592Sjoris char tag_type; 42b034d592Sjoris TAILQ_ENTRY(file_info) flist; 43b034d592Sjoris }; 44b034d592Sjoris 45b034d592Sjoris TAILQ_HEAD(file_info_list, file_info); 46b034d592Sjoris 47*c9192196Sxsa int cvs_trigger_handle(int, char *, char *, 48*c9192196Sxsa struct trigger_list *, struct file_info_list *); 49b034d592Sjoris struct trigger_list *cvs_trigger_getlines(char *, char *); 50b034d592Sjoris void cvs_trigger_freelist(struct trigger_list *); 51b034d592Sjoris void cvs_trigger_freeinfo(struct file_info_list *); 52b034d592Sjoris void cvs_trigger_loginfo_header(BUF *, char *); 53