=head1 NAME

nbd_get_subprocess_pid - get the process ID of the subprocess

=head1 SYNOPSIS

 #include <libnbd.h>

 int64_t nbd_get_subprocess_pid (
           struct nbd_handle *h
         );

=head1 DESCRIPTION

For connections which create a subprocess such as
L<nbd_connect_command(3)>, this returns the process ID (PID)
of the subprocess.  This is only supported on some platforms.

This is mainly useful in debugging cases.  For example, this
could be used to learn where to attach L<gdb(1)> to diagnose
a crash in the NBD server subprocess.

=head1 RETURN VALUE

This call returns a 64 bit signed integer E<ge> C<0>.

=head1 ERRORS

On error C<-1> is returned.

Refer to L<libnbd(3)/ERROR HANDLING>
for how to get further details of the error.

The following parameters must not be NULL: C<h>.
For more information see L<libnbd(3)/Non-NULL parameters>.

=head1 VERSION

This function first appeared in libnbd 1.22.

If you need to test if this function is available at compile time
check if the following macro is defined:

 #define LIBNBD_HAVE_NBD_GET_SUBPROCESS_PID 1

=head1 SEE ALSO

L<nbd_connect_command(3)>,
L<nbd_create(3)>,
L<nbd_kill_subprocess(3)>,
L<libnbd(3)>,
L<fork(2)>,
L<gdb(1)>.

=head1 AUTHORS

Eric Blake

Richard W.M. Jones

=head1 COPYRIGHT

Copyright Red Hat
