Annotation of nono/vm/virtio_entropy.h, revision 1.1.1.1

1.1       root        1: //
                      2: // nono
                      3: // Copyright (C) 2024 nono project
                      4: // Licensed under nono-license.txt
                      5: //
                      6: 
                      7: //
                      8: // VirtIO エントロピーデバイス
                      9: //
                     10: 
                     11: #pragma once
                     12: 
                     13: #include "virtio_base.h"
                     14: #include "monitor.h"
                     15: #include <random>
                     16: 
                     17: class VirtIOEntropyDevice : public VirtIODevice
                     18: {
                     19:        using inherited = VirtIODevice;
                     20: 
                     21:  public:
                     22:        explicit VirtIOEntropyDevice(uint slot_);
                     23:        ~VirtIOEntropyDevice() override;
                     24: 
                     25:  private:
                     26:        DECLARE_MONITOR_CALLBACK(MonitorUpdate);
                     27: 
                     28:        // ディスクリプタを一つ処理する。
                     29:        void ProcessDesc(VirtIOReq&) override;
                     30: 
                     31:        // デフォルトコンストラクタは実質 /dev/urandom だが
                     32:        // こいつにはこれ以上安全な指定方法がない。
                     33:        std::random_device rnd {};
                     34: };

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.