Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 39 for cgoTraceback (0.17 sec)

  1. src/runtime/testdata/testprogcgo/cgo.go

    void foo2(void* p) {}
    */
    import "C"
    import (
    	"fmt"
    	"os"
    	"runtime"
    	"strconv"
    	"time"
    	"unsafe"
    )
    
    func init() {
    	register("CgoSignalDeadlock", CgoSignalDeadlock)
    	register("CgoTraceback", CgoTraceback)
    	register("CgoCheckBytes", CgoCheckBytes)
    }
    
    func CgoSignalDeadlock() {
    	runtime.GOMAXPROCS(100)
    	ping := make(chan bool)
    	go func() {
    		for i := 0; ; i++ {
    			runtime.Gosched()
    			select {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Oct 31 13:20:27 UTC 2017
    - 1.8K bytes
    - Viewed (0)
  2. src/runtime/cgo/gcc_traceback.c

    // We do it this way so that the user's traceback function will be called
    // by a C function with proper unwind info.
    void
    x_cgo_callers(uintptr_t sig, void *info, void *context, void (*cgoTraceback)(struct cgoTracebackArg*), uintptr_t* cgoCallers, void (*sigtramp)(uintptr_t, void*, void*)) {
    	struct cgoTracebackArg arg;
    
    	arg.Context = 0;
    	arg.SigContext = (uintptr_t)(context);
    	arg.Buf = cgoCallers;
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 08 20:11:59 UTC 2023
    - 1.5K bytes
    - Viewed (0)
  3. src/runtime/testdata/testprogcgo/traceback.go

    extern int crashInGo;
    int tracebackF1(void);
    void cgoTraceback(void* parg);
    void cgoSymbolizer(void* parg);
    */
    import "C"
    
    import (
    	"runtime"
    	"unsafe"
    )
    
    func init() {
    	register("CrashTraceback", CrashTraceback)
    	register("CrashTracebackGo", CrashTracebackGo)
    }
    
    func CrashTraceback() {
    	runtime.SetCgoTraceback(0, unsafe.Pointer(C.cgoTraceback), nil, unsafe.Pointer(C.cgoSymbolizer))
    	C.tracebackF1()
    }
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Nov 24 21:47:44 UTC 2020
    - 949 bytes
    - Viewed (0)
  4. src/runtime/testdata/testprogcgo/traceback_c.c

    	uintptr_t  max;
    };
    
    struct cgoSymbolizerArg {
    	uintptr_t   pc;
    	const char* file;
    	uintptr_t   lineno;
    	const char* func;
    	uintptr_t   entry;
    	uintptr_t   more;
    	uintptr_t   data;
    };
    
    void cgoTraceback(void* parg) {
    	struct cgoTracebackArg* arg = (struct cgoTracebackArg*)(parg);
    	arg->buf[0] = 1;
    	arg->buf[1] = 2;
    	arg->buf[2] = 3;
    	arg->buf[3] = 0;
    }
    
    void cgoSymbolizer(void* parg) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Nov 24 21:47:44 UTC 2020
    - 1.2K bytes
    - Viewed (0)
  5. src/runtime/traceback.go

    	if version != 0 {
    		panic("unsupported version")
    	}
    
    	if cgoTraceback != nil && cgoTraceback != traceback ||
    		cgoContext != nil && cgoContext != context ||
    		cgoSymbolizer != nil && cgoSymbolizer != symbolizer {
    		panic("call SetCgoTraceback only once")
    	}
    
    	cgoTraceback = traceback
    	cgoContext = context
    	cgoSymbolizer = symbolizer
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 16:25:21 UTC 2024
    - 55.1K bytes
    - Viewed (0)
  6. src/runtime/crash_cgo_test.go

    	want := "OK\n"
    	if got != want {
    		t.Fatalf("expected %q, but got:\n%s", want, got)
    	}
    }
    
    func TestCgoTraceback(t *testing.T) {
    	t.Parallel()
    	got := runTestProg(t, "testprogcgo", "CgoTraceback")
    	want := "OK\n"
    	if got != want {
    		t.Fatalf("expected %q, but got:\n%s", want, got)
    	}
    }
    
    func TestCgoCallbackGC(t *testing.T) {
    	t.Parallel()
    	switch runtime.GOOS {
    	case "plan9", "windows":
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 15 16:44:47 UTC 2024
    - 22.2K bytes
    - Viewed (0)
  7. src/runtime/symtab.go

    			// This is done for historical reasons, and to make FuncForPC
    			// work correctly for entries in the result of runtime.Callers.
    			pc--
    		}
    		// It's important that interpret pc non-strictly as cgoTraceback may
    		// have added bogus PCs with a valid funcInfo but invalid PCDATA.
    		u, uf := newInlineUnwinder(funcInfo, pc)
    		sf := u.srcFunc(uf)
    		if u.isInlined(uf) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 40K bytes
    - Viewed (0)
  8. src/runtime/security_test.go

    	// GOTRACEBACK envvar to stdout, and prints "hello" to stderr. We then chown
    	// the program to "nobody" and set u+s on it. We execute the program, only
    	// passing it two files, for stdin and stdout, and passing
    	// GOTRACEBACK=system in the env.
    	//
    	// We expect that the program will trigger the SUID protections, resetting
    	// the value of GOTRACEBACK, and opening the missing stderr descriptor, such
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jun 13 18:10:14 UTC 2023
    - 4.1K bytes
    - Viewed (0)
  9. src/runtime/testdata/testsuid/main.go

    package main
    
    import (
    	"fmt"
    	"log"
    	"os"
    )
    
    func main() {
    	if os.Geteuid() == os.Getuid() {
    		os.Exit(99)
    	}
    
    	fmt.Fprintf(os.Stdout, "GOTRACEBACK=%s\n", os.Getenv("GOTRACEBACK"))
    	f, err := os.OpenFile(os.Getenv("TEST_OUTPUT"), os.O_CREATE|os.O_RDWR, 0600)
    	if err != nil {
    		log.Fatalf("os.Open failed: %s", err)
    	}
    	defer f.Close()
    	fmt.Fprintf(os.Stderr, "hello\n")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jun 06 18:49:01 UTC 2023
    - 534 bytes
    - Viewed (0)
  10. src/runtime/security_unix.go

    	// environment variable values (currently we only force GOTRACEBACK=none)
    	//
    	// Other packages may also disable specific functionality when secure mode
    	// is enabled (determined by using linkname to call isSecureMode).
    
    	secureEnv()
    }
    
    func secureEnv() {
    	var hasTraceback bool
    	for i := 0; i < len(envs); i++ {
    		if stringslite.HasPrefix(envs[i], "GOTRACEBACK=") {
    			hasTraceback = true
    			envs[i] = "GOTRACEBACK=none"
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 17 15:41:45 UTC 2024
    - 866 bytes
    - Viewed (0)
Back to top