Blame apache2/libinjection/libinjection.h

Packit Service 384592
/**
Packit Service 384592
 * Copyright 2012-2016 Nick Galbreath
Packit Service 384592
 * nickg@client9.com
Packit Service 384592
 * BSD License -- see COPYING.txt for details
Packit Service 384592
 *
Packit Service 384592
 * https://libinjection.client9.com/
Packit Service 384592
 *
Packit Service 384592
 */
Packit Service 384592
Packit Service 384592
#ifndef LIBINJECTION_H
Packit Service 384592
#define LIBINJECTION_H
Packit Service 384592
Packit Service 384592
#ifdef __cplusplus
Packit Service 384592
# define LIBINJECTION_BEGIN_DECLS    extern "C" {
Packit Service 384592
# define LIBINJECTION_END_DECLS      }
Packit Service 384592
#else
Packit Service 384592
# define LIBINJECTION_BEGIN_DECLS
Packit Service 384592
# define LIBINJECTION_END_DECLS
Packit Service 384592
#endif
Packit Service 384592
Packit Service 384592
LIBINJECTION_BEGIN_DECLS
Packit Service 384592
Packit Service 384592
/*
Packit Service 384592
 * Pull in size_t
Packit Service 384592
 */
Packit Service 384592
#include <string.h>
Packit Service 384592
Packit Service 384592
/*
Packit Service 384592
 * Version info.
Packit Service 384592
 *
Packit Service 384592
 * This is moved into a function to allow SWIG and other auto-generated
Packit Service 384592
 * binding to not be modified during minor release changes.  We change
Packit Service 384592
 * change the version number in the c source file, and not regenerated
Packit Service 384592
 * the binding
Packit Service 384592
 *
Packit Service 384592
 * See python's normalized version
Packit Service 384592
 * http://www.python.org/dev/peps/pep-0386/#normalizedversion
Packit Service 384592
 */
Packit Service 384592
const char* libinjection_version(void);
Packit Service 384592
Packit Service 384592
/**
Packit Service 384592
 * Simple API for SQLi detection - returns a SQLi fingerprint or NULL
Packit Service 384592
 * is benign input
Packit Service 384592
 *
Packit Service 384592
 * \param[in] s  input string, may contain nulls, does not need to be null-terminated
Packit Service 384592
 * \param[in] slen input string length
Packit Service 384592
 * \param[out] fingerprint buffer of 8+ characters.  c-string,
Packit Service 384592
 * \return 1 if SQLi, 0 if benign.  fingerprint will be set or set to empty string.
Packit Service 384592
 */
Packit Service 384592
int libinjection_sqli(const char* s, size_t slen, char fingerprint[]);
Packit Service 384592
Packit Service 384592
/** ALPHA version of xss detector.
Packit Service 384592
 *
Packit Service 384592
 * NOT DONE.
Packit Service 384592
 *
Packit Service 384592
 * \param[in] s  input string, may contain nulls, does not need to be null-terminated
Packit Service 384592
 * \param[in] slen input string length
Packit Service 384592
 * \return 1 if XSS found, 0 if benign
Packit Service 384592
 *
Packit Service 384592
 */
Packit Service 384592
int libinjection_xss(const char* s, size_t slen);
Packit Service 384592
Packit Service 384592
LIBINJECTION_END_DECLS
Packit Service 384592
Packit Service 384592
#endif /* LIBINJECTION_H */