deploy: de38ae62916547ad097c066f94a32e9ba7790eeb

This commit is contained in:
NotAShelf 2025-02-05 00:10:33 +00:00
commit 9a86359447
28502 changed files with 1261284 additions and 0 deletions

13
rustix/ioctl/index.html Normal file
View file

@ -0,0 +1,13 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Unsafe `ioctl` API."><title>rustix::ioctl - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-42caa33d.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="rustix" data-themes="" data-resource-suffix="" data-rustdoc-version="1.84.1 (e71f9a9a9 2025-01-27)" data-channel="1.84.1" data-search-js="search-92e6798f.js" data-settings-js="settings-0f613d39.js" ><script src="../../static.files/storage-59e33391.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-5f194d8c.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-893ab5e7.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../rustix/index.html">rustix</a><span class="version">0.38.42</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module ioctl</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li><li><a href="#functions" title="Functions">Functions</a></li><li><a href="#types" title="Type Aliases">Type Aliases</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate rustix</a></h2></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="../index.html">rustix</a></span><h1>Module <span>ioctl</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/rustix/ioctl/mod.rs.html#1-359">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Unsafe <code>ioctl</code> API.</p>
<p>Unix systems expose a number of <code>ioctl</code>s. <code>ioctl</code>s have been adopted as a
general purpose system call for making calls into the kernel. In addition
to the wide variety of system calls that are included by default in the
kernel, many drivers expose their own <code>ioctl</code>s for controlling their
behavior, some of which are proprietary. Therefore it is impossible to make
a safe interface for every <code>ioctl</code> call, as they all have wildly varying
semantics.</p>
<p>This module provides an unsafe interface to write your own <code>ioctl</code> API. To
start, create a type that implements <a href="trait.Ioctl.html" title="trait rustix::ioctl::Ioctl"><code>Ioctl</code></a>. Then, pass it to <a href="fn.ioctl.html" title="fn rustix::ioctl::ioctl"><code>ioctl</code></a>
to make the <code>ioctl</code> call.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.BadOpcode.html" title="struct rustix::ioctl::BadOpcode">BadOpcode</a></div><div class="desc docblock-short">Provides a bad opcode at compile time.</div></li><li><div class="item-name"><a class="struct" href="struct.Getter.html" title="struct rustix::ioctl::Getter">Getter</a></div><div class="desc docblock-short">Implements the traditional “getter” pattern for <code>ioctl</code>s.</div></li><li><div class="item-name"><a class="struct" href="struct.IntegerSetter.html" title="struct rustix::ioctl::IntegerSetter">Integer<wbr>Setter</a></div><div class="desc docblock-short">Implements an <code>ioctl</code> that passes an integer into the <code>ioctl</code>.</div></li><li><div class="item-name"><a class="struct" href="struct.NoArg.html" title="struct rustix::ioctl::NoArg">NoArg</a></div><div class="desc docblock-short">Implements an <code>ioctl</code> with no real arguments.</div></li><li><div class="item-name"><a class="struct" href="struct.NoneOpcode.html" title="struct rustix::ioctl::NoneOpcode">None<wbr>Opcode</a></div><div class="desc docblock-short">Provides a <code>None</code> code at compile time.</div></li><li><div class="item-name"><a class="struct" href="struct.Opcode.html" title="struct rustix::ioctl::Opcode">Opcode</a></div><div class="desc docblock-short">The opcode used by an <code>Ioctl</code>.</div></li><li><div class="item-name"><a class="struct" href="struct.ReadOpcode.html" title="struct rustix::ioctl::ReadOpcode">Read<wbr>Opcode</a></div><div class="desc docblock-short">Provides a read code at compile time.</div></li><li><div class="item-name"><a class="struct" href="struct.ReadWriteOpcode.html" title="struct rustix::ioctl::ReadWriteOpcode">Read<wbr>Write<wbr>Opcode</a></div><div class="desc docblock-short">Provides a read/write code at compile time.</div></li><li><div class="item-name"><a class="struct" href="struct.Setter.html" title="struct rustix::ioctl::Setter">Setter</a></div><div class="desc docblock-short">Implements the pattern for <code>ioctl</code>s where a pointer argument is given to
the <code>ioctl</code>.</div></li><li><div class="item-name"><a class="struct" href="struct.Updater.html" title="struct rustix::ioctl::Updater">Updater</a></div><div class="desc docblock-short">Implements an “updater” pattern for <code>ioctl</code>s.</div></li><li><div class="item-name"><a class="struct" href="struct.WriteOpcode.html" title="struct rustix::ioctl::WriteOpcode">Write<wbr>Opcode</a></div><div class="desc docblock-short">Provides a write code at compile time.</div></li></ul><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.Direction.html" title="enum rustix::ioctl::Direction">Direction</a></div><div class="desc docblock-short">The direction that an <code>ioctl</code> is going.</div></li></ul><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.CompileTimeOpcode.html" title="trait rustix::ioctl::CompileTimeOpcode">Compile<wbr>Time<wbr>Opcode</a></div><div class="desc docblock-short">Trait for something that provides an <code>ioctl</code> opcode at compile time.</div></li><li><div class="item-name"><a class="trait" href="trait.Ioctl.html" title="trait rustix::ioctl::Ioctl">Ioctl</a></div><div class="desc docblock-short">A trait defining the properties of an <code>ioctl</code> command.</div></li></ul><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.ioctl.html" title="fn rustix::ioctl::ioctl">ioctl</a><sup title="unsafe function"></sup></div><div class="desc docblock-short">Perform an <code>ioctl</code> call.</div></li></ul><h2 id="types" class="section-header">Type Aliases<a href="#types" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="type" href="type.IoctlOutput.html" title="type rustix::ioctl::IoctlOutput">Ioctl<wbr>Output</a></div><div class="desc docblock-short">The type used by the <code>ioctl</code> to signify the output.</div></li><li><div class="item-name"><a class="type" href="type.RawOpcode.html" title="type rustix::ioctl::RawOpcode">RawOpcode</a></div><div class="desc docblock-short">The type used by the <code>ioctl</code> to signify the command.</div></li></ul></section></div></main></body></html>