LCOV - code coverage report
Current view: top level - shared - machine-image.h (source / functions) Hit Total Coverage
Test: systemd test coverage Lines: 0 2 0.0 %
Date: 2015-07-29 18:47:03 Functions: 0 2 0.0 %

          Line data    Source code
       1             : /*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
       2             : 
       3             : #pragma once
       4             : 
       5             : /***
       6             :   This file is part of systemd.
       7             : 
       8             :   Copyright 2014 Lennart Poettering
       9             : 
      10             :   systemd is free software; you can redistribute it and/or modify it
      11             :   under the terms of the GNU Lesser General Public License as published by
      12             :   the Free Software Foundation; either version 2.1 of the License, or
      13             :   (at your option) any later version.
      14             : 
      15             :   systemd is distributed in the hope that it will be useful, but
      16             :   WITHOUT ANY WARRANTY; without even the implied warranty of
      17             :   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
      18             :   Lesser General Public License for more details.
      19             : 
      20             :   You should have received a copy of the GNU Lesser General Public License
      21             :   along with systemd; If not, see <http://www.gnu.org/licenses/>.
      22             : ***/
      23             : 
      24             : #include "time-util.h"
      25             : #include "lockfile-util.h"
      26             : #include "hashmap.h"
      27             : 
      28             : typedef enum ImageType {
      29             :         IMAGE_DIRECTORY,
      30             :         IMAGE_SUBVOLUME,
      31             :         IMAGE_RAW,
      32             :         _IMAGE_TYPE_MAX,
      33             :         _IMAGE_TYPE_INVALID = -1
      34             : } ImageType;
      35             : 
      36             : typedef struct Image {
      37             :         ImageType type;
      38             :         char *name;
      39             :         char *path;
      40             :         bool read_only;
      41             : 
      42             :         usec_t crtime;
      43             :         usec_t mtime;
      44             : 
      45             :         uint64_t usage;
      46             :         uint64_t usage_exclusive;
      47             :         uint64_t limit;
      48             :         uint64_t limit_exclusive;
      49             : 
      50             :         void *userdata;
      51             : } Image;
      52             : 
      53             : Image *image_unref(Image *i);
      54             : void image_hashmap_free(Hashmap *map);
      55             : 
      56           0 : DEFINE_TRIVIAL_CLEANUP_FUNC(Image*, image_unref);
      57           0 : DEFINE_TRIVIAL_CLEANUP_FUNC(Hashmap*, image_hashmap_free);
      58             : 
      59             : int image_find(const char *name, Image **ret);
      60             : int image_discover(Hashmap *map);
      61             : 
      62             : int image_remove(Image *i);
      63             : int image_rename(Image *i, const char *new_name);
      64             : int image_clone(Image *i, const char *new_name, bool read_only);
      65             : int image_read_only(Image *i, bool b);
      66             : 
      67             : const char* image_type_to_string(ImageType t) _const_;
      68             : ImageType image_type_from_string(const char *s) _pure_;
      69             : 
      70             : bool image_name_is_valid(const char *s) _pure_;
      71             : 
      72             : int image_path_lock(const char *path, int operation, LockFile *global, LockFile *local);
      73             : int image_name_lock(const char *name, int operation, LockFile *ret);
      74             : 
      75             : int image_set_limit(Image *i, uint64_t referenced_max);

Generated by: LCOV version 1.11