github.com/apptainer/singularity@v3.1.1+incompatible/internal/pkg/runtime/engines/singularity/rpc/args.go (about) 1 // Copyright (c) 2018, Sylabs Inc. All rights reserved. 2 // This software is licensed under a 3-clause BSD license. Please consult the 3 // LICENSE.md file distributed with the sources of this project regarding your 4 // rights to use or distribute this software. 5 6 package rpc 7 8 import ( 9 "os" 10 11 "github.com/sylabs/singularity/pkg/util/loop" 12 ) 13 14 // MkdirArgs defines the arguments to mkdir. 15 type MkdirArgs struct { 16 Path string 17 Perm os.FileMode 18 } 19 20 // LoopArgs defines the arguments to create a loop device. 21 type LoopArgs struct { 22 Image string 23 Mode int 24 Info loop.Info64 25 MaxDevices int 26 Shared bool 27 } 28 29 // MountArgs defines the arguments to mount. 30 type MountArgs struct { 31 Source string 32 Target string 33 Filesystem string 34 Mountflags uintptr 35 Data string 36 } 37 38 // ChrootArgs defines the arguments to chroot. 39 type ChrootArgs struct { 40 Root string 41 Method string 42 } 43 44 // HostnameArgs defines the arguments to sethostname. 45 type HostnameArgs struct { 46 Hostname string 47 } 48 49 // HasNamespaceArgs defines the arguments to compare host namespace. 50 // and RPC process 51 type HasNamespaceArgs struct { 52 Pid int 53 NsType string 54 } 55 56 // SetFsIDArgs defines the arguments to setfsid. 57 type SetFsIDArgs struct { 58 UID int 59 GID int 60 }