úÎúşğÎÈ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇ(c) Nickolay Kudasov 2014 BSD-style (see the file LICENSE)nickolay.kudasov@gmail.com Safe-Inferred(Collect flags in a single integer value.(c) Nickolay Kudasov 2014 BSD-style (see the file LICENSE)nickolay.kudasov@gmail.com Safe-Inferred#2Representation of a command to run in a container.The program to run (passed to execvp).The argvD of that program, including the program itself as the first element.LXC attach options for .NOTE: for stdin, stdout and stderr descriptors dup2() will be used before calling  exec_function, (assuming not 0, 1 and 2S are specified) and the original fds are closed before passing control over. Any  O_CLOEXEC! flag will be removed after that.Any combination of  flags.JThe namespaces to attach to (CLONE_NEW... flags). | Initial personality (Nothing to autodetect).This may be ignored if lxc( is compiled without personality support Inital current directory, Nothing to use cwd.~If the current directory does not exist in the container, the root directory will be used instead because of kernel defaults. The user-id to run as.NOTE: Set to -1; for default behaviour (init uid for userns containers or 0" (super-user) if detection fails). The group-id to run as.NOTE: Set to -1; for default behaviour (init gid for userns containers or 0" (super-user) if detection fails). Environment policy.@Extra environment variables to set in the container environment.ZNames of environment variables in existing environment to retain in container environment.stdin file descriptor.stdout file descriptor.stderr file descriptor. Flags for . All Linux Security Module flags."Mask of flags to apply by default.FIXME: unknown. Off by default.)Remount /proc filesystem. Off by default.5Execute under a Linux Security Module. On by default.Set personality. On by default!Drop capabilities. On by default.Move to cgroup. On by default.LXC environment policy.Clear the environment.Retain the environment.exec function to use for .See ' and (."Convert  to internal representation.#Convert  to bit flag.$Default attach options to use.% Allocate lxc_attach_options_t" structure in a temporary storage.& Allocate lxc_attach_command_t" structure in a temporary storage.'Run a command in the container.(%Run a shell command in the container.(  !"#$%&'((  !"#$%&'(( !"# $%&'(    !"#$%&'((c) Nickolay Kudasov 2014 BSD-style (see the file LICENSE)nickolay.kudasov@gmail.com Safe-Inferredc*5Specifications for how to create a new backing store.,Filesystem type.-Filesystem size in bytes..ZFS root path./LVM Volume Group name.0LVM Logical Volume name.1LVM thin pool to use, if any.2Directory path.3Container state.4!Container is in some other state.5Container is thawed.6Container is frozen.7Container is freezing.8Container is aborting.9Container is stopping.:Container is running.;Container is starting.<Container is stopped.=Container object.? A pointer to  lxc_container structure.@An LXC container snapshot.BName of snapshot.C$Full path to snapshots comment file.DTime snapshot was created.E Full path to LXCPATH for snapshot.F Options for ½ operation.G Number of  LXC_CREATE* flags.H Redirect stdin to  /dev/zero and stdout and stderr to  /dev/null.I Options for ° operation.J Number of  LXC_CLONE_* flags.K-Snapshot only if bdev supports it, else copy.LUse the same bdev type.M$Snapshot the original filesystem(s).N4Do not change the MAC address on network interfaces.O.Do not edit the rootfs to change the hostname.PLXC error structure.RError message.S Error number.‚Pretty print LXC error message.ƒTurn I into a bit flag.„Turn F into a bit flag.…%Parse state as string representation.†%Get string representation of a state.‡Marshal Haskell ** into C structure using temporary storage.‘the memory is freed when the subcomputation terminates (either normally or via an exception), so the pointer to the temporary storage must not be used after this.ˆAllocate a new container.*Whether container wishes to be daemonized.‘Get last container's error.’ Determine if /var/lib/lxc/$name/config exists.True if container is defined, else False.“"Determine if container is running.True on success, else False.”Determine state of container.•Freeze running container.True on success, else False.–Thaw a frozen container.True on success, else False.—4Determine process ID of the containers init process.˜3Load the specified configuration for the container.™Start the container.šStop the container.True on success, else False.›GDetermine if the container wants to run disconnected from the terminal.œPDetermine whether container wishes all file descriptors to be closed on startup. Return current config file name./Wait for container to reach a particular state. A timeout of -1 means wait forever. A timeout 0 means do not wait.Ÿ%Set a key/value configuration option. Delete the container.True on success, else False.@NOTE: Container must be stopped and have no dependent snapshots.¡Save configuaration to a file.¢Rename a container.£+Request the container reboot by sending it SIGINT.True$ if reboot request successful, else False.¤-Request the container shutdown by sending it SIGPWR.¥8Completely clear the containers in-memory configuration.¦$Retrieve the value of a config item.§;Retrieve the value of a config item from running container.¨7Retrieve a list of config item keys given a key prefix.©$Obtain a list of network interfaces.ª-Determine the list of container IP addresses.«@Retrieve the specified cgroup subsystem value for the container.¬;Set the specified cgroup subsystem value for the container.­Clear a configuration item. Analog of Ÿ.®9Determine full path to the containers configuration file.fEach container can have a custom configuration path. However by default it will be set to either the LXCPATH2 configure variable, or the lxcpath value in the LXC_GLOBAL_CONF configuration file (i.e. /etc/lxc/lxc.conf).9The value for a specific container can be changed using ¯.¯7Set the full path to the containers configuration file.°Copy a stopped container.±)Allocate a console tty for the container.ÉThe returned file descriptor is used to keep the tty allocated. The caller should call close(2) on the returned file descriptor when no longer required so that it may be allocated by another caller.²Allocate and run a console tty.³JCreate a sub-process attached to a container and run a function inside it.´9Run a program inside a container and wait for it to exit.µCreate a container snapshot.6Assuming default paths, snapshots will be created as /var/lib/lxc/<c>/snaps/snap<n> where <c># represents the container name and <n>, represents the zero-based snapshot number.·%Obtain a list of container snapshots.¸+Create a new container based on a snapshot.}The restored container will be a copy (not snapshot) of the snapshot, and restored in the lxcpath of the original container.WARNING:Ê If new name is the same as the current container name, the container will be destroyed. However, this will fail if the snapshot is overlay-based, since the snapshots will pin the original container.NOTE:+ As an example, if the container exists as /var/lib/lxc/c1, snapname might be "snap0" (representing /var/lib/lxc/c1/snaps/snap0). If new name is c2, then snap0 will be copied to /var/lib/lxc/c2.¹Destroy the specified snapshot.º2Determine if the caller may control the container.Falsem if there is a control socket for the container monitor and the caller may not access it, otherwise returns True.»&Add specified device to the container.¼+Remove specified device from the container.½Create a container.¾+Add a reference to the specified container.¿,Drop a reference to the specified container. Just False on success,  Just TrueJ if reference was successfully dropped and container has been freed, and Nothing on error.À&Obtain a list of all container states.Á&Get the value for a global config key.ÂDetermine version of LXC.Ä.Get a list of defined containers in a lxcpath.Å4Get a list of active containers for a given lxcpath.Æ:Get a complete list of all containers for a given lxcpath.ÇClose log file.Ÿ)*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆName to use for the container.'Full path to configuration file to use.Newly allocated container.‰Š‹Œ‘’“”•–—˜ Container..Full path to alternate configuration file, or Nothing' to use the default configuration file.True on success, else False.™ Container.Use lxcinit rather than  /sbin/init.#Array of arguments to pass to init.True on success, else False.š› Container.Value for the daemonize bit.True+ if container wants to be daemonised, else False.œ Container.Value for the  close_all_fds bit.True+ if container wants to be daemonised, else False. Container.State to wait for.Timeout in seconds.True' if state reached within timeout, else False.Ÿ Container.Name of option to set. Value to set.True on success, else False. ¡ Container.+Full path to file to save configuration in.True on success, else False.¢ Container.&New name to be used for the container.True on success, else False.£¤ Container.)Seconds to wait before returning false. (-1 to wait forever, 0 to avoid waiting).True2 if the container was shutdown successfully, else False.¥¦ Container.Name of option to get. The item or Nothing on error.§ Container.Name of option to get. The item or Nothing on error.¨ Container. Key prefix. List of keys.©ª Container.#Network interface name to consider.Network family (for example "inet", "inet6").1IPv6 scope id (ignored if family is not "inet6").A list of network interfaces.« Container.cgroup subsystem to retrieve.cgroup subsystem value or Nothing on error.¬ Container.cgroup subsystem to consider. Value to set.True on success, else False.­ Container.Name of option to clear.True on success, else False.®¯ Container. Full path to configuration file.True on success, else False.°Original container.New name for the container. If Nothing<, the same name is used and a new lxcpath MUST be specified.1lxcpath in which to create the new container. If Nothing0, the original container's lxcpath will be used. Additional I' flags to change the cloning behaviour.Optionally force the cloned bdevtype to a specified plugin. By default the original is used (subject to snapshot requirements).IInformation about how to create the new storage (i.e. fstype and fsdata).>In case of a block device backing store, an optional size. If Nothing¤, the original backing store's size will be used if possible. Note this only applies to the rootfs. For any other filesystems, the original size will be duplicated.6Additional arguments to pass to the clone hook script.± Container.+Terminal number to attempt to allocate, or Nothing% to allocate the first available tty.Tuple  fd,ttynum, masterfd where fd is file descriptor number, ttynum is terminal number and masterfd; is file descriptor refering to the master side of the pty.² Container.(Terminal number to attempt to allocate, Nothing( to allocate the first available tty or Just 0 to allocate the console.#File descriptor to read input from.#File descriptor to write output to.)File descriptor to write error output to.The escape character (1 == 'a', 2 == 'b', ...).True on success, else False.³ Container.Function to run.Data to pass to exec function.Attach options./Process ID of process running inside container c that is running exec function, or Nothing on error.´ Container.Attach options.-Full path inside container of program to run.&Array of arguments to pass to program. waitpid(2)/ status of exited process that ran program, or Nothing on error.µ Container.;Full path to file containing a description of the snapshot.Nothing) on error, or zero-based snapshot number.¶·¸ Container.Name of snapshot.*Name to be used for the restored snapshot.True on success, else False.¹ Container.Name of snapshot.True on success, else False.º» Container.Full path of the device.$Alternate path in the container (or Nothing to use source path).True on success, else False.¼ Container.Full path of the device.$Alternate path in the container (or Nothing to use source path).True on success, else False.½@Container (with lxcpath, name and a starting configuration set).TTemplate to execute to instantiate the root filesystem and adjust the configuration.Backing store type to use (if Nothing, dir type will be used by default).RAdditional parameters for the backing store (for example LVM volume group to use).F flags. Note: LXC 1.0 supports only  CreateQuiet option."Arguments to pass to the template.True on success. False otherwise.¾¿ÀÁThe name of the config key.3String representing the current value for the key. Nothing on error.ÂÃÄlxcpath under which to look.List of  name, container pairs.ÅFull LXCPATH path to consider.List of  name, container pairs.ÆFull LXCPATH path to consider.List of  name, container pairs.ÇŸ)*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇŸji€hg~f}e|d{czbyax`w_v^u]t\s[rZqYpXoWnVmUlTkPQRS‚IONMLKJFHGƒ„@ABCDE=>?3<;:987654…†*+,-./012‡ˆ)‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇ|)*+,-./0123 <;:987654=>?@ABCDEFHGIONMLKJPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇ(c) Nickolay Kudasov 2014 BSD-style (see the file LICENSE)nickolay.kudasov@gmail.com Safe-Inferred&  !"#$'(& $ !'("#(c) Nickolay Kudasov 2014 BSD-style (see the file LICENSE)nickolay.kudasov@gmail.com Safe-Inferrede*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS‚ƒ„…†ˆ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ·¸º»¼½¾¿ÀÁÂÄÅÆÇe=>?@ABCDE*+,-./0123<;:987654…†ˆIONMLKJFHGƒ„PQRS‚’“”—©ª‘®¯˜¡¨Ÿ¦§¥­•–™š£¤½°¢ ±²³´µ·¸›œ«¬º»¼¾¿ÄÅÆÀÁÂÇ(c) Nickolay Kudasov 2014 BSD-style (see the file LICENSE)nickolay.kudasov@gmail.com Safe-Inferred‹  !"#$'(*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS‚ƒ„…†ˆ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ·¸º»¼½¾¿ÀÁÂÄÅÆÇÈ        !"#$%%&'()*+,-.//0123456789:;<=>?@AABCCDEFGHIJKLMNOPQRRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈlxc-0.2System.LXC.Internal.Utils!System.LXC.Internal.AttachOptionsSystem.LXC.Internal.ContainerSystem.LXC.ContainerattachSystem.LXC.AttachOptions System.LXCmkFlags AttachCommand attachProgram attachArgv AttachOptions attachFlagsattachNamespacesattachPersonalityattachInitialCWD attachUID attachGIDattachEnvPolicyattachExtraEnvVarsattachExtraKeepEnv attachStdinFDattachStdoutFDattachStderrFD AttachFlag AttachLSM AttachDefault AttachLSMNowAttachRemountProcSys AttachLSMExecAttachSetPersonalityAttachDropCapabilitiesAttachMoveToCGroupAttachEnvPolicyAttachClearEnv AttachKeepEnv AttachExecFngetAttachExecFnfromAttachEnvPolicyfromAttachFlagdefaultAttachOptionswithC'lxc_attach_options_twithC'lxc_attach_command_tattachRunCommandattachRunShellField BDevSpecs bdevFSType bdevFSSizebdevZFSRootPathbdevLVMVolumeGroupNamebdevLVMLogicalVolumeNamebdevLVMThinPool bdevDirectoryContainerStateContainerOtherStateContainerThawedContainerFrozenContainerFreezingContainerAbortingContainerStoppingContainerRunningContainerStartingContainerStopped Container getContainerSnapshot snapshotNamesnapshotCommentPathnamesnapshotTimestampsnapshotLXCPath CreateOptionCreateMaxFlags CreateQuiet CloneOption CloneMaxFlagsCloneMaybeSnapshotCloneKeepBDevType CloneSnapshotCloneKeepMacAddr CloneKeepNameLXCErrorlxcErrorString lxcErrorNumSnapshotFreeFnContainerAttachRunWaitFnContainerAttachFnContainerConsoleFnContainerConsoleGetFDFnContainerSnapshotListFnContainerSnapshotFnContainerWaitFnContainerGetIPsFnContainerGetInterfacesFnContainerSetItemFnContainerGetItemFnContainerGetRunningConfigItemFnContainerClearConfigFnContainerShutdownFnContainerStartFnContainerBoolBoolFnContainerStringBoolFnContainerProcessIDFnContainerStringFnContainerBoolFnContainerCloneFnContainerCreateFnmkFreeFnmkAttachRunWaitFn mkAttachFn mkConsoleFnmkConsoleGetFDFnmkSnapshotListFn mkSnapshotFnmkWaitFn mkGetIPsFnmkGetInterfacesFn mkSetItemFn mkGetItemFnmkGetRunningConfigItemFnmkClearConfigFn mkShutdownFn mkStartFn mkBoolBoolFnmkStringBoolFn mkProcessIDFn mkStringFnmkBoolFn mkCloneFn mkCreateFnprettyLXCError cloneFlag createFlag parseState printStatewithC'bdev_specs mkContainermkFnboolFn stringBoolFn boolBoolFn getItemFn setItemFn setItemFn' getDaemonize getLastError isDefined isRunningstatefreezeunfreezeinitPID loadConfigstartstop wantDaemonizewantCloseAllFDsconfigFileNamewait setConfigItemdestroy saveConfigrenamerebootshutdown clearConfig getConfigItemgetRunningConfigItemgetKeys getInterfacesgetIPs getCGroupItem setCGroupItemclearConfigItem getConfigPath setConfigPathclone consoleGetFDconsole attachRunWaitsnapshotpeekC'lxc_snapshot snapshotListsnapshotRestoresnapshotDestroy mayControl addDeviceNoderemoveDeviceNodecreategetRefdropRef getWaitStatesgetGlobalConfigItem getVersionlistContainersFnlistDefinedContainerslistActiveContainerslistAllContainerslogClose