LIEF: Library to Instrument Executable Formats
Version 2.0.0
Toggle main menu visibility
Loading...
Searching...
No Matches
lief-install
x86_64
static
include
LIEF
runtime
osx
osx/Host.hpp
Go to the documentation of this file.
1
/* Copyright 2017 - 2026 R. Thomas
2
* Copyright 2017 - 2026 Quarkslab
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
#ifndef LIEF_RUNTIME_OSX_HOST_H
17
#define LIEF_RUNTIME_OSX_HOST_H
18
#include "
LIEF/visibility.h
"
19
#include <cstdint>
20
#include <ostream>
21
#include <string>
22
23
24
namespace
LIEF::runtime::osx
{
25
26
class
LIEF_API
Host
{
27
public
:
28
struct
LIEF_API
version_t
{
29
uint32_t
major
= 0;
30
uint32_t
minor
= 0;
31
uint32_t
patch
= 0;
32
33
version_t
(uint32_t
major
, uint32_t
minor
, uint32_t
patch
) :
34
major
(
major
),
35
minor
(
minor
),
36
patch
(
patch
) {}
37
38
bool
operator<=
(
const
version_t
& rhs)
const
;
39
bool
operator>
(
const
version_t
& rhs)
const
{
40
return
!(*
this
<= rhs);
41
}
42
43
bool
operator>=
(
const
version_t
& rhs)
const
;
44
bool
operator<
(
const
version_t
& rhs)
const
{
45
return
!(*
this
>= rhs);
46
}
47
48
bool
operator==
(
const
version_t
& other)
const
;
49
bool
operator!=
(
const
version_t
& other)
const
{
50
return
!(*
this
== other);
51
}
52
53
std::string
to_string
()
const
;
54
55
static
const
version_t
&
BigSur
();
56
static
const
version_t
&
Monterey
();
57
static
const
version_t
&
Ventura
();
58
static
const
version_t
&
Sonoma
();
59
static
const
version_t
&
Sequoia
();
60
static
const
version_t
&
Tahoe
();
61
62
LIEF_API
friend
std::ostream&
operator<<
(std::ostream& os,
63
const
version_t
version
) {
64
os <<
version
.to_string();
65
return
os;
66
}
67
};
68
70
static
std::string
os_version_name
();
71
73
static
version_t
os_version
();
74
79
static
bool
is_sip_enabled
();
80
};
81
82
83
}
84
85
86
#endif
LIEF::runtime::osx::Host
Definition
osx/Host.hpp:26
LIEF::runtime::osx::Host::os_version_name
static std::string os_version_name()
The OS version string (e.g. Version 26.2 (Build 25C56)).
LIEF::runtime::osx::Host::is_sip_enabled
static bool is_sip_enabled()
Whether System Integrity Protection (SIP) is enabled on this host.
LIEF::runtime::osx::Host::os_version
static version_t os_version()
The OS version (e.g. 13.0.0).
LIEF::runtime::osx
Definition
osx/Host.hpp:24
LIEF::version
lief_version_t version()
Return the current version.
LIEF::runtime::osx::Host::version_t
Definition
osx/Host.hpp:28
LIEF::runtime::osx::Host::version_t::Tahoe
static const version_t & Tahoe()
LIEF::runtime::osx::Host::version_t::operator==
bool operator==(const version_t &other) const
LIEF::runtime::osx::Host::version_t::operator<
bool operator<(const version_t &rhs) const
Definition
osx/Host.hpp:44
LIEF::runtime::osx::Host::version_t::major
uint32_t major
Definition
osx/Host.hpp:29
LIEF::runtime::osx::Host::version_t::operator<=
bool operator<=(const version_t &rhs) const
LIEF::runtime::osx::Host::version_t::version_t
version_t(uint32_t major, uint32_t minor, uint32_t patch)
Definition
osx/Host.hpp:33
LIEF::runtime::osx::Host::version_t::BigSur
static const version_t & BigSur()
LIEF::runtime::osx::Host::version_t::operator>=
bool operator>=(const version_t &rhs) const
LIEF::runtime::osx::Host::version_t::operator<<
friend std::ostream & operator<<(std::ostream &os, const version_t version)
Definition
osx/Host.hpp:62
LIEF::runtime::osx::Host::version_t::patch
uint32_t patch
Definition
osx/Host.hpp:31
LIEF::runtime::osx::Host::version_t::Ventura
static const version_t & Ventura()
LIEF::runtime::osx::Host::version_t::Sonoma
static const version_t & Sonoma()
LIEF::runtime::osx::Host::version_t::Sequoia
static const version_t & Sequoia()
LIEF::runtime::osx::Host::version_t::to_string
std::string to_string() const
LIEF::runtime::osx::Host::version_t::operator!=
bool operator!=(const version_t &other) const
Definition
osx/Host.hpp:49
LIEF::runtime::osx::Host::version_t::minor
uint32_t minor
Definition
osx/Host.hpp:30
LIEF::runtime::osx::Host::version_t::Monterey
static const version_t & Monterey()
LIEF::runtime::osx::Host::version_t::operator>
bool operator>(const version_t &rhs) const
Definition
osx/Host.hpp:39
visibility.h
LIEF_API
#define LIEF_API
Definition
visibility.h:45
Generated by
1.18.0