1105573Simp/*- 2105573Simp * DEVD (Device action daemon) 3105573Simp * 4330449Seadler * SPDX-License-Identifier: BSD-2-Clause-FreeBSD 5330449Seadler * 6105573Simp * Copyright (c) 2002 M. Warner Losh <imp@freebsd.org>. 7105573Simp * All rights reserved. 8105573Simp * 9105573Simp * Redistribution and use in source and binary forms, with or without 10105573Simp * modification, are permitted provided that the following conditions 11105573Simp * are met: 12105573Simp * 1. Redistributions of source code must retain the above copyright 13105573Simp * notice, this list of conditions and the following disclaimer. 14105573Simp * 2. Redistributions in binary form must reproduce the above copyright 15105573Simp * notice, this list of conditions and the following disclaimer in the 16105573Simp * documentation and/or other materials provided with the distribution. 17105573Simp * 18105573Simp * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 19105573Simp * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20105573Simp * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21105573Simp * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 22105573Simp * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23105573Simp * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24105573Simp * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25105573Simp * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26105573Simp * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27105573Simp * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28105573Simp * SUCH DAMAGE. 29105573Simp * 30105573Simp * $FreeBSD: stable/11/sbin/devd/devd.h 330449 2018-03-05 07:26:05Z eadler $ 31105573Simp */ 32105573Simp 33114086Simp#ifndef DEVD_H 34114086Simp#define DEVD_H 35114086Simp 36114086Simp/** @warning This file needs to be purely 'C' compatible. 37114086Simp */ 38107665Simpstruct event_proc; 39107665Simpstruct eps; 40107665Simp__BEGIN_DECLS 41107665Simpvoid add_attach(int, struct event_proc *); 42107665Simpvoid add_detach(int, struct event_proc *); 43107665Simpvoid add_directory(const char *); 44107665Simpvoid add_nomatch(int, struct event_proc *); 45121487Simpvoid add_notify(int, struct event_proc *); 46107665Simpstruct event_proc *add_to_event_proc(struct event_proc *, struct eps *); 47107665Simpstruct eps *new_match(const char *, const char *); 48147874Simpstruct eps *new_media(const char *, const char *); 49107665Simpstruct eps *new_action(const char *); 50107665Simpvoid set_pidfile(const char *); 51107665Simpvoid set_variable(const char *, const char *); 52105573Simpvoid yyerror(const char *s); 53107665Simpint yylex(void); 54107665Simpint yyparse(void); 55107665Simp__END_DECLS 56105573Simp 57107665Simp#define PATH_DEVCTL "/dev/devctl" 58249951Sasomers#define DEVCTL_MAXBUF 8192 59114086Simp 60114086Simp#endif /* DEVD_H */ 61