libintrovirt v0.57.4
IntroVirt introspection library
Loading...
Searching...
No Matches
EncryptMessage.hh
Go to the documentation of this file.
1/*
2 * Copyright 2021 Assured Information Security, Inc.
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/* This file is automatically generated. Do not edit. */
17#pragma once
18
19#include <cstdint>
24#include <ostream>
25#include <string>
26
27namespace introvirt {
28namespace windows {
29namespace secur32 {
30
36class EncryptMessage final : public WindowsFunctionCall {
37 public:
40
41 uint32_t fQOP() const;
42 void fQOP(uint32_t fQOP);
43
46 std::shared_ptr<SecBufferDesc> Message();
47
48 uint32_t MessageSeqNo() const;
49 void MessageSeqNo(uint32_t MessageSeqNo);
50
51 const std::string& function_name() const override;
52 const std::string& library_name() const override;
53 void write(std::ostream& os = std::cout) const override;
54 Json::Value json() const override;
55
58
60 ~EncryptMessage() override;
61
62 /* Injection helper */
64 const guest_ptr<void>& pMessage, uint32_t MessageSeqNo);
65
66 static constexpr int ArgumentCount = 4;
67 inline static const std::string LibraryName = "secur32";
68 inline static const std::string FunctionName = "EncryptMessage";
69
70 private:
71 /* Injection constructor */
72 EncryptMessage(Event& event, const guest_ptr<void>& phContext, uint32_t fQOP,
73 const guest_ptr<void>& pMessage, uint32_t MessageSeqNo);
74
75 private:
76 mutable guest_ptr<void> phContext_;
77 uint32_t fQOP_;
78 guest_ptr<void> pMessage_;
79 uint32_t MessageSeqNo_;
80};
81
82} // namespace secur32
83} // namespace windows
84} // namespace introvirt
Interface class for hypervisor events.
Definition Event.hh:43
Definition guest_ptr.hh:88
Definition WindowsFunctionCall.hh:31
Handler for secur32!EncryptMessage.
Definition EncryptMessage.hh:36
void pMessage(const guest_ptr< void > &pMessage)
void phContext(const guest_ptr< void > &phContext)
static constexpr int ArgumentCount
Definition EncryptMessage.hh:66
void MessageSeqNo(uint32_t MessageSeqNo)
const std::string & library_name() const override
Get the name of the library this call is for.
void result(SECURITY_STATUS result)
static SECURITY_STATUS inject(const guest_ptr< void > &phContext, uint32_t fQOP, const guest_ptr< void > &pMessage, uint32_t MessageSeqNo)
static const std::string FunctionName
Definition EncryptMessage.hh:68
static const std::string LibraryName
Definition EncryptMessage.hh:67
std::shared_ptr< SecBufferDesc > Message()
const std::string & function_name() const override
Get the function name.
Json::Value json() const override
Get the function as Json.
void write(std::ostream &os=std::cout) const override
Write out a textual representation of the function for display.
Type-safe guest virtual address pointer and guest_ptr template.
SECURITY_STATUS
Definition SECURITY_STATUS.hh:27
Core IntroVirt classes.
Definition Cr0.hh:20