OLD | NEW |
(Empty) | |
| 1 # Copyright (C) 2012 Free Software Foundation, Inc. |
| 2 # |
| 3 # This program is free software; you can redistribute it and/or modify |
| 4 # it under the terms of the GNU General Public License as published by |
| 5 # the Free Software Foundation; either version 3 of the License, or |
| 6 # (at your option) any later version. |
| 7 # |
| 8 # This program is distributed in the hope that it will be useful, |
| 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 11 # GNU General Public License for more details. |
| 12 # |
| 13 # You should have received a copy of the GNU General Public License |
| 14 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 15 |
| 16 # Manipulation with PID on target is not supported. |
| 17 if [is_remote target] then { |
| 18 return 0 |
| 19 } |
| 20 |
| 21 set testfile attach-twice |
| 22 set executable ${testfile} |
| 23 set binfile ${objdir}/${subdir}/${executable} |
| 24 |
| 25 if { [prepare_for_testing ${testfile}.exp $executable] } { |
| 26 return -1 |
| 27 } |
| 28 |
| 29 set testpid [eval exec $binfile &] |
| 30 exec sleep 2 |
| 31 |
| 32 set parentpid 0 |
| 33 |
| 34 set test "attach" |
| 35 gdb_test_multiple "attach $testpid" $test { |
| 36 -re "Attaching to program: \[^\r\n\]*, process $testpid\r\n.*warning: proces
s $testpid is already traced by process (\[0-9\]+)\r\n.*ptrace: Operation not pe
rmitted\\.\r\n$gdb_prompt $" { |
| 37 set parentpid $expect_out(1,string) |
| 38 pass $test |
| 39 } |
| 40 -re "Attaching to program: \[^\r\n\]*, process $testpid\r\n.*ptrace: Operati
on not permitted\\.\r\n$gdb_prompt $" { |
| 41 fail $test |
| 42 } |
| 43 -re "\r\n$gdb_prompt $" { |
| 44 xfail $test |
| 45 } |
| 46 } |
| 47 |
| 48 if {$parentpid != 0} { |
| 49 eval exec kill -9 $parentpid |
| 50 } |
| 51 eval exec kill -9 $testpid |
OLD | NEW |