1.\" 2.\" This file and its contents are supplied under the terms of the 3.\" Common Development and Distribution License ("CDDL"), version 1.0. 4.\" You may only use this file in accordance with the terms of version 5.\" 1.0 of the CDDL. 6.\" 7.\" A full copy of the text of the CDDL should have accompanied this 8.\" source. A copy of the CDDL is also available via the Internet at 9.\" http://www.illumos.org/license/CDDL. 10.\" 11.\" 12.\" Copyright 2015 Joyent, Inc. 13.\" 14.Dd May 11, 2016 15.Dt PDELBKPT 3PROC 16.Os 17.Sh NAME 18.Nm Pdelbkpt 19.Nd clear a breakpoint in a process 20.Sh SYNOPSIS 21.Lb libproc 22.In libproc.h 23.Ft int 24.Fo Pdelbkpt 25.Fa "struct ps_prochandle *P" 26.Fa "uintptr_t address" 27.Fa "ulong_t saved" 28.Fc 29.Sh DESCRIPTION 30The 31.Fn Pdelbkpt 32function removes the breakpoint installed at 33.Fa address 34from process 35.Fa P . 36Restoring the instruction present in 37.Fa saved . 38.Pp 39If the instruction at 40.Fa address 41is no longer the architecture-specific breakpoint instruction, then 42.Fa saved 43is not restored, but the function still returns successfully. This 44behavior is done due to the presence of setting breakpoints in 45self-modifying code, e.g. procedure linkage tables. 46.Pp 47The 48.Fn Pdelbkpt 49function only works on running processes, such as those created through 50.Xr Pgrab 3PROC 51and 52.Xr Pcreate 3PROC . 53Attempting to remove a breakpoint from process handles to core files, 54zombie processes, or ELF objects will fail. 55.Sh RETURN VALUES 56Upon successful completion, the 57.Fn Pdelbkpt 58function removes the breakpoint and 59returns 60.Sy 0 . 61Otherwise, 62.Sy -1 63is returned, and 64.Sy errno 65is set to indicate the error. 66.Sh ERRORS 67For a full list of possible errors see the 68.Sy DIAGNOSTICS 69section in 70.Xr proc 4 . 71.Pp 72The 73.Fn Pdelbkpt 74function will fail with: 75.Bl -tag -width Er 76.It Er ENOENT 77The handle 78.Fa P 79refers to a grabbed core file, a zombie process, or an ELF object. 80.El 81.Sh INTERFACE STABILITY 82.Sy Uncommitted 83.Sh MT-LEVEL 84See 85.Sy LOCKING 86in 87.Xr libproc 3LIB . 88.Sh SEE ALSO 89.Xr libproc 3LIB , 90.Xr Pcreate 3PROC , 91.Xr Pgrab 3PROC , 92.Xr Pgrab_core 3PROC , 93.Xr Pgrab_file 3PROC , 94.Xr Psetbkpt 3PROC , 95.Xr proc 4 96