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

FreeBSD Manual Pages

  
 
  

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

NAME
       ksql_alloc_child	 --  allocate  a ksql database handle in split-process
       mode

LIBRARY
       library "ksql"

SYNOPSIS
       #include	<sys/types.h>
       #include	<stdint.h>
       #include	<ksql.h>

       struct ksql *
       ksql_alloc_child(const struct ksqlcfg *cfg,  void (*onfork)(void	*arg),
	   void	*arg);

DESCRIPTION
       The  ksql_alloc_child  function	creates	 a SQLite database handle.  It
       must be matched by a call  to  ksql_free(3)  unless  KSQL_SAFE_EXIT  is
       specified,  in  which case it will be freed on exit.  (It is still good
       practice	to manually free.)  It is usually followed by ksql_open(3).

       The ksql_alloc_child function differs from ksql_alloc(3)	 in  that  the
       database	 is  opened  in	 a child process instead of within the current
       process,	with all database queries running over a communication socket.
       This way, the caller can	safely sandbox after the function returns.

       If cfg is NULL, a configuration from ksql_cfg_defaults(3) is used.

       The onfork function, if specified, is invoked by	the child after	a suc-
       cessful fork(2) with the	arg variable.  The process environment	within
       which onfork is invoked is prior	to its being sandboxed.

RETURN VALUES
       This returns the	allocated database handle or NULL if an	error occurs.

SEE ALSO
       ksql_cfg_defaults(3), ksql_free(3)

FreeBSD	Ports 14.quarterly	  May 7, 2018		   KSQL_ALLOC_CHILD(3)

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

home | help