!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/usr/include/nodejs/src/   drwxr-xr-x
Free 28.78 GB of 117.98 GB (24.4%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     sharedarraybuffer_metadata.h (2.55 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#ifndef SRC_SHAREDARRAYBUFFER_METADATA_H_
#define SRC_SHAREDARRAYBUFFER_METADATA_H_

#if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS

#include "node.h"
#include <memory>

namespace node {
namespace worker {

class SharedArrayBufferMetadata;

// This is an object associated with a SharedArrayBuffer, which keeps track
// of a cross-thread reference count. Once a SharedArrayBuffer is transferred
// for the first time (or is attempted to be transferred), one of these objects
// is created, and the SharedArrayBuffer is moved from internalized mode into
// externalized mode (i.e. the JS engine no longer frees the memory on its own).
//
// This will always be referred to using a std::shared_ptr, since it keeps
// a reference count and is guaranteed to be thread-safe.
typedef std::shared_ptr<SharedArrayBufferMetadata>
    SharedArrayBufferMetadataReference;

class SharedArrayBufferMetadata
    : public std::enable_shared_from_this<SharedArrayBufferMetadata> {
 public:
  static SharedArrayBufferMetadataReference ForSharedArrayBuffer(
      Environment* env,
      v8::Local<v8::Context> context,
      v8::Local<v8::SharedArrayBuffer> source);
  ~SharedArrayBufferMetadata();

  // Create a SharedArrayBuffer object for a specific Environment and Context.
  // The created SharedArrayBuffer will be in externalized mode and has
  // a hidden object attached to it, during whose lifetime the reference
  // count is increased by 1.
  v8::MaybeLocal<v8::SharedArrayBuffer> GetSharedArrayBuffer(
      Environment* env, v8::Local<v8::Context> context);
  std::shared_ptr<v8::ArrayBuffer::Allocator> allocator() const {
    return allocator_;
  }

  SharedArrayBufferMetadata(SharedArrayBufferMetadata&& other) = delete;
  SharedArrayBufferMetadata& operator=(
      SharedArrayBufferMetadata&& other) = delete;
  SharedArrayBufferMetadata& operator=(
      const SharedArrayBufferMetadata&) = delete;
  SharedArrayBufferMetadata(const SharedArrayBufferMetadata&) = delete;

 private:
  SharedArrayBufferMetadata(
      const v8::SharedArrayBuffer::Contents&,
      std::shared_ptr<v8::ArrayBuffer::Allocator>);

  // Attach a lifetime tracker object with a reference count to `target`.
  v8::Maybe<bool> AssignToSharedArrayBuffer(
      Environment* env,
      v8::Local<v8::Context> context,
      v8::Local<v8::SharedArrayBuffer> target);

  v8::SharedArrayBuffer::Contents contents_;
  std::shared_ptr<v8::ArrayBuffer::Allocator> allocator_;
};

}  // namespace worker
}  // namespace node

#endif  // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS


#endif  // SRC_SHAREDARRAYBUFFER_METADATA_H_

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0033 ]--