|
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 */
|