diff --git a/libpod/boltdb_state_unsupported.go b/libpod/boltdb_state_unsupported.go deleted file mode 100644 index 9db1e3c4bc..0000000000 --- a/libpod/boltdb_state_unsupported.go +++ /dev/null @@ -1,19 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" -) - -// replaceNetNS handle network namespace transitions after updating a -// container's state. -func replaceNetNS(netNSPath string, ctr *Container, newState *ContainerState) error { - return errors.New("replaceNetNS not supported on this platform") -} - -// getNetNSPath retrieves the netns path to be stored in the database -func getNetNSPath(ctr *Container) string { - return "" -} diff --git a/libpod/container_copy_unsupported.go b/libpod/container_copy_unsupported.go deleted file mode 100644 index 703b0a74ed..0000000000 --- a/libpod/container_copy_unsupported.go +++ /dev/null @@ -1,17 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - "io" -) - -func (c *Container) copyFromArchive(path string, chown, noOverwriteDirNonDir bool, rename map[string]string, reader io.Reader) (func() error, error) { - return nil, errors.New("not implemented (*Container) copyFromArchive") -} - -func (c *Container) copyToArchive(path string, writer io.Writer) (func() error, error) { - return nil, errors.New("not implemented (*Container) copyToArchive") -} diff --git a/libpod/container_internal_unsupported.go b/libpod/container_internal_unsupported.go deleted file mode 100644 index 1967c577b3..0000000000 --- a/libpod/container_internal_unsupported.go +++ /dev/null @@ -1,99 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "context" - "errors" - - "github.com/containers/common/libnetwork/etchosts" - "github.com/containers/podman/v4/libpod/define" - "github.com/containers/podman/v4/pkg/lookup" - spec "github.com/opencontainers/runtime-spec/specs-go" -) - -func (c *Container) mountSHM(shmOptions string) error { - return errors.New("not implemented (*Container) mountSHM") -} - -func (c *Container) unmountSHM(mount string) error { - return errors.New("not implemented (*Container) unmountSHM") -} - -func (c *Container) cleanupOverlayMounts() error { - return errors.New("not implemented (*Container) cleanupOverlayMounts") -} - -// prepare mounts the container and sets up other required resources like net -// namespaces -func (c *Container) prepare() error { - return errors.New("not implemented (*Container) prepare") -} - -// resolveWorkDir resolves the container's workdir and, depending on the -// configuration, will create it, or error out if it does not exist. -// Note that the container must be mounted before. -func (c *Container) resolveWorkDir() error { - return errors.New("not implemented (*Container) resolveWorkDir") -} - -// cleanupNetwork unmounts and cleans up the container's network -func (c *Container) cleanupNetwork() error { - return errors.New("not implemented (*Container) cleanupNetwork") -} - -// reloadNetwork reloads the network for the given container, recreating -// firewall rules. -func (c *Container) reloadNetwork() error { - return errors.New("not implemented (*Container) reloadNetwork") -} - -// Generate spec for a container -// Accepts a map of the container's dependencies -func (c *Container) generateSpec(ctx context.Context) (*spec.Spec, error) { - return nil, errors.New("not implemented (*Container) generateSpec") -} - -func (c *Container) getUserOverrides() *lookup.Overrides { - return &lookup.Overrides{} -} - -func (c *Container) checkpoint(ctx context.Context, options ContainerCheckpointOptions) (*define.CRIUCheckpointRestoreStatistics, int64, error) { - return nil, 0, errors.New("not implemented (*Container) checkpoint") -} - -func (c *Container) restore(ctx context.Context, options ContainerCheckpointOptions) (criuStatistics *define.CRIUCheckpointRestoreStatistics, runtimeRestoreDuration int64, retErr error) { - return nil, 0, errors.New("not implemented (*Container) restore") -} - -// getHostsEntries returns the container ip host entries for the correct netmode -func (c *Container) getHostsEntries() (etchosts.HostEntries, error) { - return nil, errors.New("unsupported (*Container) getHostsEntries") -} - -// Fix ownership and permissions of the specified volume if necessary. -func (c *Container) fixVolumePermissions(v *ContainerNamedVolume) error { - return errors.New("unsupported (*Container) fixVolumePermissions") -} - -func (c *Container) expectPodCgroup() (bool, error) { - return false, errors.New("unsupported (*Container) expectPodCgroup") -} - -// Get cgroup path in a format suitable for the OCI spec -func (c *Container) getOCICgroupPath() (string, error) { - return "", errors.New("unsupported (*Container) getOCICgroupPath") -} - -func getLocalhostHostEntry(c *Container) etchosts.HostEntries { - return nil -} - -func isRootlessCgroupSet(cgroup string) bool { - return false -} - -func openDirectory(path string) (fd int, err error) { - return -1, errors.New("unsupported openDirectory") -} diff --git a/libpod/container_stat_unsupported.go b/libpod/container_stat_unsupported.go deleted file mode 100644 index e88b88bb1f..0000000000 --- a/libpod/container_stat_unsupported.go +++ /dev/null @@ -1,14 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - - "github.com/containers/podman/v4/libpod/define" -) - -func (c *Container) stat(containerMountPoint string, containerPath string) (*define.FileInfo, string, string, error) { - return nil, "", "", errors.New("Containers stat not supported on this platform") -} diff --git a/libpod/container_unsupported.go b/libpod/container_unsupported.go deleted file mode 100644 index 16bf11622b..0000000000 --- a/libpod/container_unsupported.go +++ /dev/null @@ -1,7 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -type containerPlatformState struct { -} diff --git a/libpod/info_unsupported.go b/libpod/info_unsupported.go deleted file mode 100644 index 0aed51247d..0000000000 --- a/libpod/info_unsupported.go +++ /dev/null @@ -1,14 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - - "github.com/containers/podman/v4/libpod/define" -) - -func (r *Runtime) info() (*define.Info, error) { - return nil, errors.New("not implemented (*Runtime) info") -} diff --git a/libpod/networking_unsupported.go b/libpod/networking_unsupported.go deleted file mode 100644 index ff10122972..0000000000 --- a/libpod/networking_unsupported.go +++ /dev/null @@ -1,87 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - "net" - "path/filepath" - - "github.com/containers/common/libnetwork/types" - "github.com/containers/podman/v4/libpod/define" - "github.com/containers/storage/pkg/lockfile" -) - -type RootlessNetNS struct { - dir string - Lock *lockfile.LockFile -} - -// ocicniPortsToNetTypesPorts convert the old port format to the new one -// while deduplicating ports into ranges -func ocicniPortsToNetTypesPorts(ports []types.OCICNIPortMapping) []types.PortMapping { - return []types.PortMapping{} -} - -func (c *Container) getContainerNetworkInfo() (*define.InspectNetworkSettings, error) { - return nil, errors.New("not implemented (*Container) getContainerNetworkInfo") -} - -func (c *Container) setupRootlessNetwork() error { - return errors.New("not implemented (*Container) setupRootlessNetwork") -} - -func (r *Runtime) setupNetNS(ctr *Container) error { - return errors.New("not implemented (*Runtime) setupNetNS") -} - -// normalizeNetworkName takes a network name, a partial or a full network ID and returns the network name. -// If the network is not found an error is returned. -func (r *Runtime) normalizeNetworkName(nameOrID string) (string, error) { - return "", errors.New("not implemented (*Runtime) normalizeNetworkName") -} - -// DisconnectContainerFromNetwork removes a container from its network -func (r *Runtime) DisconnectContainerFromNetwork(nameOrID, netName string, force bool) error { - return errors.New("not implemented (*Runtime) DisconnectContainerFromNetwork") -} - -// ConnectContainerToNetwork connects a container to a network -func (r *Runtime) ConnectContainerToNetwork(nameOrID, netName string, netOpts types.PerNetworkOptions) error { - return errors.New("not implemented (*Runtime) ConnectContainerToNetwork") -} - -// getPath will join the given path to the rootless netns dir -func (r *RootlessNetNS) getPath(path string) string { - return filepath.Join(r.dir, path) -} - -// Do - run the given function in the rootless netns. -// It does not lock the rootlessCNI lock, the caller -// should only lock when needed, e.g. for network operations. -func (r *RootlessNetNS) Do(toRun func() error) error { - return errors.New("not implemented (*RootlessNetNS) Do") -} - -// Cleanup the rootless network namespace if needed. -// It checks if we have running containers with the bridge network mode. -// Cleanup() expects that r.Lock is locked -func (r *RootlessNetNS) Cleanup(runtime *Runtime) error { - return errors.New("not implemented (*RootlessNetNS) Cleanup") -} - -// GetRootlessNetNs returns the rootless netns object. If create is set to true -// the rootless network namespace will be created if it does not already exist. -// If called as root it returns always nil. -// On success the returned RootlessCNI lock is locked and must be unlocked by the caller. -func (r *Runtime) GetRootlessNetNs(new bool) (*RootlessNetNS, error) { - return nil, errors.New("not implemented (*Runtime) GetRootlessNetNs") -} - -// convertPortMappings will remove the HostIP part from the ports when running inside podman machine. -// This is needed because a HostIP of 127.0.0.1 would now allow the gvproxy forwarder to reach to open ports. -// For machine the HostIP must only be used by gvproxy and never in the VM. -func (c *Container) convertPortMappings() []types.PortMapping { - return []types.PortMapping{} -} diff --git a/libpod/oci_conmon_unsupported.go b/libpod/oci_conmon_unsupported.go deleted file mode 100644 index cc6d68e894..0000000000 --- a/libpod/oci_conmon_unsupported.go +++ /dev/null @@ -1,24 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - - "github.com/containers/common/pkg/config" - "github.com/containers/common/pkg/resize" -) - -// Make a new Conmon-based OCI runtime with the given options. -// Conmon will wrap the given OCI runtime, which can be `runc`, `crun`, or -// any runtime with a runc-compatible CLI. -// The first path that points to a valid executable will be used. -// Deliberately private. Someone should not be able to construct this outside of -// libpod. -func newConmonOCIRuntime(name string, paths []string, conmonPath string, runtimeFlags []string, runtimeCfg *config.Config) (OCIRuntime, error) { - return nil, errors.New("newConmonOCIRuntime not supported on this platform") -} - -func registerResizeFunc(r <-chan resize.TerminalSize, bundlePath string) { -} diff --git a/libpod/pod_top_unsupported.go b/libpod/pod_top_unsupported.go deleted file mode 100644 index 193bb61386..0000000000 --- a/libpod/pod_top_unsupported.go +++ /dev/null @@ -1,20 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" -) - -// GetPodPidInformation returns process-related data of all processes in -// the pod. The output data can be controlled via the `descriptors` -// argument which expects format descriptors and supports all AIXformat -// descriptors of ps (1) plus some additional ones to for instance inspect the -// set of effective capabilities. Each element in the returned string slice -// is a tab-separated string. -// -// For more details, please refer to github.com/containers/psgo. -func (p *Pod) GetPodPidInformation(descriptors []string) ([]string, error) { - return nil, errors.New("not implemented (*Pod) GetPodPidInformation") -} diff --git a/libpod/runtime_pod_unsupported.go b/libpod/runtime_pod_unsupported.go deleted file mode 100644 index 1e32d3d513..0000000000 --- a/libpod/runtime_pod_unsupported.go +++ /dev/null @@ -1,30 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "context" - "errors" - - "github.com/containers/podman/v4/pkg/specgen" -) - -// NewPod makes a new, empty pod -func (r *Runtime) NewPod(ctx context.Context, p specgen.PodSpecGenerator, options ...PodCreateOption) (_ *Pod, deferredErr error) { - return nil, errors.New("not implemented (*Runtime) NewPod") -} - -// AddInfra adds the created infra container to the pod state -func (r *Runtime) AddInfra(ctx context.Context, pod *Pod, infraCtr *Container) (*Pod, error) { - return nil, errors.New("not implemented (*Runtime) AddInfra") -} - -// SavePod is a helper function to save the pod state from outside of libpod -func (r *Runtime) SavePod(pod *Pod) error { - return errors.New("not implemented (*Runtime) SavePod") -} - -func (r *Runtime) removePod(ctx context.Context, p *Pod, removeCtrs, force bool, timeout *uint) error { - return errors.New("not implemented (*Runtime) removePod") -} diff --git a/libpod/runtime_volume_unsupported.go b/libpod/runtime_volume_unsupported.go deleted file mode 100644 index 7b77588948..0000000000 --- a/libpod/runtime_volume_unsupported.go +++ /dev/null @@ -1,42 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "context" - "errors" - - "github.com/containers/podman/v4/libpod/define" -) - -// NewVolume creates a new empty volume -func (r *Runtime) NewVolume(ctx context.Context, options ...VolumeCreateOption) (*Volume, error) { - if !r.valid { - return nil, define.ErrRuntimeStopped - } - return r.newVolume(false, options...) -} - -// NewVolume creates a new empty volume -func (r *Runtime) newVolume(noCreatePluginVolume bool, options ...VolumeCreateOption) (*Volume, error) { - return nil, errors.New("not implemented (*Runtime) newVolume") -} - -// UpdateVolumePlugins reads all volumes from all configured volume plugins and -// imports them into the libpod db. It also checks if existing libpod volumes -// are removed in the plugin, in this case we try to remove it from libpod. -// On errors we continue and try to do as much as possible. all errors are -// returned as array in the returned struct. -// This function has many race conditions, it is best effort but cannot guarantee -// a perfect state since plugins can be modified from the outside at any time. -func (r *Runtime) UpdateVolumePlugins(ctx context.Context) *define.VolumeReload { - return nil -} - -// removeVolume removes the specified volume from state as well tears down its mountpoint and storage. -// ignoreVolumePlugin is used to only remove the volume from the db and not the plugin, -// this is required when the volume was already removed from the plugin, i.e. in UpdateVolumePlugins(). -func (r *Runtime) removeVolume(ctx context.Context, v *Volume, force bool, timeout *uint, ignoreVolumePlugin bool) error { - return errors.New("not implemented (*Runtime) removeVolume") -} diff --git a/libpod/stats_unsupported.go b/libpod/stats_unsupported.go deleted file mode 100644 index 3094e2eaac..0000000000 --- a/libpod/stats_unsupported.go +++ /dev/null @@ -1,17 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - - "github.com/containers/podman/v4/libpod/define" -) - -// GetContainerStats gets the running stats for a given container. -// The previousStats is used to correctly calculate cpu percentages. You -// should pass nil if there is no previous stat for this container. -func (c *Container) GetContainerStats(previousStats *define.ContainerStats) (*define.ContainerStats, error) { - return nil, errors.New("not implemented (*Container) GetContainerStats") -} diff --git a/libpod/util_unsupported.go b/libpod/util_unsupported.go deleted file mode 100644 index f38213a100..0000000000 --- a/libpod/util_unsupported.go +++ /dev/null @@ -1,27 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" - - spec "github.com/opencontainers/runtime-spec/specs-go" -) - -// systemdSliceFromPath makes a new systemd slice under the given parent with -// the given name. -// The parent must be a slice. The name must NOT include ".slice" -func systemdSliceFromPath(parent, name string, resources *spec.LinuxResources) (string, error) { - return "", errors.New("not implemented systemdSliceFromPath") -} - -// Unmount umounts a target directory -func Unmount(mount string) { -} - -// LabelVolumePath takes a mount path for a volume and gives it an -// selinux label of either shared or not -func LabelVolumePath(path, mountLabel string) error { - return errors.New("not implemented LabelVolumePath") -} diff --git a/libpod/volume_internal_unsupported.go b/libpod/volume_internal_unsupported.go deleted file mode 100644 index d138c15fb5..0000000000 --- a/libpod/volume_internal_unsupported.go +++ /dev/null @@ -1,32 +0,0 @@ -//go:build !linux && !freebsd -// +build !linux,!freebsd - -package libpod - -import ( - "errors" -) - -// mount mounts the volume if necessary. -// A mount is necessary if a volume has any options set. -// If a mount is necessary, v.state.MountCount will be incremented. -// If it was 0 when the increment occurred, the volume will be mounted on the -// host. Otherwise, we assume it is already mounted. -// Must be done while the volume is locked. -// Is a no-op on volumes that do not require a mount (as defined by -// volumeNeedsMount()). -func (v *Volume) mount() error { - return errors.New("not implemented (*Volume) mount") -} - -// unmount unmounts the volume if necessary. -// Unmounting a volume that is not mounted is a no-op. -// Unmounting a volume that does not require a mount is a no-op. -// The volume must be locked for this to occur. -// The mount counter will be decremented if non-zero. If the counter reaches 0, -// the volume will really be unmounted, as no further containers are using the -// volume. -// If force is set, the volume will be unmounted regardless of mount counter. -func (v *Volume) unmount(force bool) error { - return errors.New("not implemented (*Volume) unmount") -}