DragonFly On-Line Manual Pages
libsigscan(3) DragonFly Library Functions Manual libsigscan(3)
NAME
libsigscan.h - Library for binary signature scanning
LIBRARY
library "libsigscan"
SYNOPSIS
#include <libsigscan.h>
Support functions
const char *
libsigscan_get_version(void);
int
libsigscan_get_access_flags_read(void);
int
libsigscan_get_codepage(int *codepage, libsigscan_error_t **error);
int
libsigscan_set_codepage(int codepage, libsigscan_error_t **error);
Notify functions
void
libsigscan_notify_set_verbose(int verbose);
int
libsigscan_notify_set_stream(FILE *stream, libsigscan_error_t **error);
int
libsigscan_notify_stream_open(const char *filename, libsigscan_error_t **error);
int
libsigscan_notify_stream_close(libsigscan_error_t **error);
Error functions
void
libsigscan_error_free(libsigscan_error_t **error);
int
libsigscan_error_fprint(libsigscan_error_t *error, FILE *stream);
int
libsigscan_error_sprint(libsigscan_error_t *error, char *string, size_t size);
int
libsigscan_error_backtrace_fprint(libsigscan_error_t *error, FILE *stream);
int
libsigscan_error_backtrace_sprint(libsigscan_error_t *error, char *string, size_t size);
Scanner functions
int
libsigscan_scanner_initialize(libsigscan_scanner_t **scanner, libsigscan_error_t **error);
int
libsigscan_scanner_free(libsigscan_scanner_t **scanner, libsigscan_error_t **error);
int
libsigscan_scanner_signal_abort(libsigscan_scanner_t *scanner, libsigscan_error_t **error);
int
libsigscan_scanner_set_scan_buffer_size(libsigscan_scanner_t *scanner, size_t scan_buffer_size, libsigscan_error_t **error);
int
libsigscan_scanner_add_signature(libsigscan_scanner_t *scanner, const char *identifier, size_t identifier_length, off64_t pattern_offset, const uint8_t *pattern, size_t pattern_size, uint32_t signature_flags, libsigscan_error_t **error);
int
libsigscan_scanner_scan_start(libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, libsigscan_error_t **error);
int
libsigscan_scanner_scan_stop(libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, libsigscan_error_t **error);
int
libsigscan_scanner_scan_buffer(libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, const uint8_t *buffer, size_t buffer_size, libsigscan_error_t **error);
int
libsigscan_scanner_scan_file(libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, const char *filename, libsigscan_error_t **error);
Available when compiled with wide character string support:
int
libsigscan_scanner_scan_file_wide(libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, const wchar_t *filename, libsigscan_error_t **error);
Available when compiled with libbfio support:
int
libsigscan_scanner_scan_file_io_handle(libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, libbfio_handle_t *file_io_handle, libsigscan_error_t **error);
Scan state functions
int
libsigscan_scan_state_initialize(libsigscan_scan_state_t **scan_state, libsigscan_error_t **error);
int
libsigscan_scan_state_free(libsigscan_scan_state_t **scan_state, libsigscan_error_t **error);
int
libsigscan_scan_state_set_data_size(libsigscan_scan_state_t *scan_state, size64_t data_size, libsigscan_error_t **error);
int
libsigscan_scan_state_get_number_of_results(libsigscan_scan_state_t *scan_state, int *number_of_results, libsigscan_error_t **error);
int
libsigscan_scan_state_get_result(libsigscan_scan_state_t *scan_state, int result_index, libsigscan_scan_result_t **scan_result, libsigscan_error_t **error);
Scan result functions
int
libsigscan_scan_result_free(libsigscan_scan_result_t **scan_result, libsigscan_error_t **error);
int
libsigscan_scan_result_get_identifier_size(libsigscan_scan_result_t *scan_result, size_t *identifier_size, libsigscan_error_t **error);
int
libsigscan_scan_result_get_identifier(libsigscan_scan_result_t *scan_result, char *identifier, size_t identifier_size, libsigscan_error_t **error);
DESCRIPTION
The libsigscan_get_version() function is used to retrieve the library
version.
RETURN VALUES
Most of the functions return NULL or -1 on error, dependent on the return
type. For the actual return values see "libsigscan.h".
ENVIRONMENT
None
FILES
None libsigscan allows to be compiled with wide character support
(wchar_t).
To compile libsigscan with wide character support use: ./configure
--enable-wide-character-type=yes
or define: _UNICODE
or UNICODE
during compilation.
LIBSIGSCAN_WIDE_CHARACTER_TYPE
in libsigscan/features.h can be used to determine if libsigscan was
compiled with wide character support.
BUGS
Please report bugs of any kind on the project issue tracker:
https://github.com/libyal/libsigscan/issues
AUTHOR
These man pages are generated from "libsigscan.h".
COPYRIGHT
Copyright (C) 2014-2016, Joachim Metz <joachim.metz@gmail.com>.
This is free software; see the source for copying conditions. There is
NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
SEE ALSO
the libsigscan.h include file
libsigscan June 27, 2015 libsigscan