From 9a186f60163058003605fd44bdac5d7a7087c8ad Mon Sep 17 00:00:00 2001 From: Kristaps Dzonsons Date: Fri, 8 Jun 2012 10:36:23 +0000 Subject: Add a new mansearch.h interface, which replaces apropos_db.c This is a much more minimal interface that stuffs all operations into a single function. It uses sqlite3 and ohash. --- mansearch.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 mansearch.h (limited to 'mansearch.h') diff --git a/mansearch.h b/mansearch.h new file mode 100644 index 00000000..861944fb --- /dev/null +++ b/mansearch.h @@ -0,0 +1,38 @@ +/* $Id: mansearch.h,v 1.1 2012/06/08 10:36:23 kristaps Exp $ */ +/* + * Copyright (c) 2012 Kristaps Dzonsons + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ +#ifndef MANSEARCH_H +#define MANSEARCH_H + +struct manpage { + char file[MAXPATHLEN]; /* prefixed by manpath */ + char *desc; /* description of manpage */ + int form; /* 0 == catpage */ +}; + +__BEGIN_DECLS + +int mansearch(const struct manpaths *paths, /* manpaths */ + const char *arch, /* architecture */ + const char *sec, /* manual section */ + int argc, /* size of argv */ + char *argv[], /* search terms */ + struct manpage **res, /* results */ + size_t *ressz); /* results returned */ + +__END_DECLS + +#endif /*!MANSEARCH_H*/ -- cgit v1.2.3-56-ge451