Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
libsigscan(3)		    Library Functions Manual		 libsigscan(3)

NAME
       libsigscan.h -- Library for binary signature scanning

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_*sstcaatne__sttate,
	   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_*rsecsaunl_tr_etsult,
	   size_t *identifier_size, libsigscan_error_t **error);

       int
       libsigscan_scan_result_get_identifier(libsigscan_scan_resul*ts_ctan_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  re-
       turn type.  For the actual return values	see "libsigscan.h".

ENVIRONMENT
       None

FILES
       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-2024,	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			  May 3, 2019			 libsigscan(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=libsigscan&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help