...

Source file src/github.com/opencontainers/runc/rlimit_linux.go

Documentation: github.com/opencontainers/runc

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"golang.org/x/sys/unix"
     7  )
     8  
     9  var rlimitMap = map[string]int{
    10  	"RLIMIT_CPU":        unix.RLIMIT_CPU,
    11  	"RLIMIT_FSIZE":      unix.RLIMIT_FSIZE,
    12  	"RLIMIT_DATA":       unix.RLIMIT_DATA,
    13  	"RLIMIT_STACK":      unix.RLIMIT_STACK,
    14  	"RLIMIT_CORE":       unix.RLIMIT_CORE,
    15  	"RLIMIT_RSS":        unix.RLIMIT_RSS,
    16  	"RLIMIT_NPROC":      unix.RLIMIT_NPROC,
    17  	"RLIMIT_NOFILE":     unix.RLIMIT_NOFILE,
    18  	"RLIMIT_MEMLOCK":    unix.RLIMIT_MEMLOCK,
    19  	"RLIMIT_AS":         unix.RLIMIT_AS,
    20  	"RLIMIT_LOCKS":      unix.RLIMIT_LOCKS,
    21  	"RLIMIT_SIGPENDING": unix.RLIMIT_SIGPENDING,
    22  	"RLIMIT_MSGQUEUE":   unix.RLIMIT_MSGQUEUE,
    23  	"RLIMIT_NICE":       unix.RLIMIT_NICE,
    24  	"RLIMIT_RTPRIO":     unix.RLIMIT_RTPRIO,
    25  	"RLIMIT_RTTIME":     unix.RLIMIT_RTTIME,
    26  }
    27  
    28  func strToRlimit(key string) (int, error) {
    29  	rl, ok := rlimitMap[key]
    30  	if !ok {
    31  		return 0, fmt.Errorf("wrong rlimit value: %s", key)
    32  	}
    33  	return rl, nil
    34  }
    35  

View as plain text