* [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2
@ 2019-07-26 10:23 Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 1/6] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
A set of misc linux user patches for 4.2.
v1->v2:
- updated commit messages
- minor improvements of code formatting
- added three patches containing support for ten additional
ioctls
Aleksandar Markovic (5):
linux-user: Add support for FDMSGON and FDMSGOFF ioctls
linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT
ioctls
linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and
FDGETMAXERRS ioctls
linux-user: Add support for RNDRESEEDCRNG ioctl
Yunqiang Su (1):
linux user: Add support for FDFLUSH ioctl
linux-user/ioctls.h | 16 ++++++++++++++++
linux-user/syscall.c | 1 +
linux-user/syscall_defs.h | 31 +++++++++++++++++++++++++++++++
linux-user/syscall_types.h | 12 ++++++++++++
4 files changed, 60 insertions(+)
--
2.7.4
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v2 1/6] linux user: Add support for FDFLUSH ioctl
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
@ 2019-07-26 10:23 ` Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 2/6] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Yunqiang Su <ysu@wavecomp.com>
FDFLUSH is used for flushing buffers of floppy drives. Support in
QEMU is needed because some of Debian packages use this ioctl while
running post-build tests. One such example is 'tar' package.
Signed-off-by: Yunqiang Su <ysu@wavecomp.com>
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
linux-user/ioctls.h | 2 ++
linux-user/syscall.c | 1 +
linux-user/syscall_defs.h | 4 ++++
3 files changed, 7 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 5e84dc7..3ade2d2 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -112,6 +112,8 @@
IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
#endif
+ IOCTL(FDFLUSH, 0, TYPE_NULL)
+
#ifdef FIBMAP
IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index d2c9817..89e4651 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -86,6 +86,7 @@
#include <linux/kd.h>
#include <linux/mtio.h>
#include <linux/fs.h>
+#include <linux/fd.h>
#if defined(CONFIG_FIEMAP)
#include <linux/fiemap.h>
#endif
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 3175440..6696563 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -857,6 +857,10 @@ struct target_pollfd {
#define TARGET_BLKROTATIONAL TARGET_IO(0x12, 126)
#define TARGET_BLKZEROOUT TARGET_IO(0x12, 127)
+/* From <linux/fd.h> */
+
+#define TARGET_FDFLUSH TARGET_IO(2, 0x4b)
+
#define TARGET_FIBMAP TARGET_IO(0x00,1) /* bmap access */
#define TARGET_FIGETBSZ TARGET_IO(0x00,2) /* get the block size used for bmap */
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v2 2/6] linux-user: Add support for FDMSGON and FDMSGOFF ioctls
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 1/6] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
@ 2019-07-26 10:23 ` Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 3/6] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
FDMSGON and FDMSGOFF switch informational messages of floppy drives
on and off.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
linux-user/ioctls.h | 2 ++
linux-user/syscall_defs.h | 2 ++
2 files changed, 4 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 3ade2d2..7fac4fc 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -112,6 +112,8 @@
IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
#endif
+ IOCTL(FDMSGON, 0, TYPE_NULL)
+ IOCTL(FDMSGOFF, 0, TYPE_NULL)
IOCTL(FDFLUSH, 0, TYPE_NULL)
#ifdef FIBMAP
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 6696563..850e1ae 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -859,6 +859,8 @@ struct target_pollfd {
/* From <linux/fd.h> */
+#define TARGET_FDMSGON TARGET_IO(2, 0x45)
+#define TARGET_FDMSGOFF TARGET_IO(2, 0x46)
#define TARGET_FDFLUSH TARGET_IO(2, 0x4b)
#define TARGET_FIBMAP TARGET_IO(0x00,1) /* bmap access */
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v2 3/6] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 1/6] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 2/6] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
@ 2019-07-26 10:23 ` Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 4/6] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls are misc commands
for controlling a floppy drive.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
linux-user/ioctls.h | 4 ++++
linux-user/syscall_defs.h | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 7fac4fc..7c14b93 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -115,6 +115,10 @@
IOCTL(FDMSGON, 0, TYPE_NULL)
IOCTL(FDMSGOFF, 0, TYPE_NULL)
IOCTL(FDFLUSH, 0, TYPE_NULL)
+ IOCTL(FDRESET, 0, TYPE_NULL)
+ IOCTL(FDRAWCMD, 0, TYPE_NULL)
+ IOCTL(FDTWADDLE, 0, TYPE_NULL)
+ IOCTL(FDEJECT, 0, TYPE_NULL)
#ifdef FIBMAP
IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 850e1ae..4b9f159 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -862,6 +862,10 @@ struct target_pollfd {
#define TARGET_FDMSGON TARGET_IO(2, 0x45)
#define TARGET_FDMSGOFF TARGET_IO(2, 0x46)
#define TARGET_FDFLUSH TARGET_IO(2, 0x4b)
+#define TARGET_FDRESET TARGET_IO(2, 0x54)
+#define TARGET_FDRAWCMD TARGET_IO(2, 0x58)
+#define TARGET_FDTWADDLE TARGET_IO(2, 0x59)
+#define TARGET_FDEJECT TARGET_IO(2, 0x5a)
#define TARGET_FIBMAP TARGET_IO(0x00,1) /* bmap access */
#define TARGET_FIGETBSZ TARGET_IO(0x00,2) /* get the block size used for bmap */
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v2 4/6] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (2 preceding siblings ...)
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 3/6] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
@ 2019-07-26 10:23 ` Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 5/6] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 6/6] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
5 siblings, 0 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls provide means for controlling
formatting of a floppy drive.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
linux-user/ioctls.h | 3 +++
linux-user/syscall_defs.h | 9 +++++++++
linux-user/syscall_types.h | 5 +++++
3 files changed, 17 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 7c14b93..0e15fe1 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -114,6 +114,9 @@
IOCTL(FDMSGON, 0, TYPE_NULL)
IOCTL(FDMSGOFF, 0, TYPE_NULL)
+ IOCTL(FDFMTBEG, 0, TYPE_NULL)
+ IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
+ IOCTL(FDFMTEND, 0, TYPE_NULL)
IOCTL(FDFLUSH, 0, TYPE_NULL)
IOCTL(FDRESET, 0, TYPE_NULL)
IOCTL(FDRAWCMD, 0, TYPE_NULL)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 4b9f159..a8fc943 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -859,8 +859,17 @@ struct target_pollfd {
/* From <linux/fd.h> */
+struct target_format_descr {
+ abi_uint device;
+ abi_uint head;
+ abi_uint track;
+};
+
#define TARGET_FDMSGON TARGET_IO(2, 0x45)
#define TARGET_FDMSGOFF TARGET_IO(2, 0x46)
+#define TARGET_FDFMTBEG TARGET_IO(2, 0x47)
+#define TARGET_FDFMTTRK TARGET_IOW(2, 0x48, struct target_format_descr)
+#define TARGET_FDFMTEND TARGET_IO(2, 0x49)
#define TARGET_FDFLUSH TARGET_IO(2, 0x4b)
#define TARGET_FDRESET TARGET_IO(2, 0x54)
#define TARGET_FDRAWCMD TARGET_IO(2, 0x58)
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index b98a23b..57cd9e5 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -267,6 +267,11 @@ STRUCT(blkpg_ioctl_arg,
TYPE_INT, /* datalen */
TYPE_PTRVOID) /* data */
+STRUCT(format_descr,
+ TYPE_INT, /* device */
+ TYPE_INT, /* head */
+ TYPE_INT) /* track */
+
#if defined(CONFIG_USBFS)
/* usb device ioctls */
STRUCT(usbdevfs_ctrltransfer,
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v2 5/6] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (3 preceding siblings ...)
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 4/6] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
@ 2019-07-26 10:23 ` Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 6/6] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
5 siblings, 0 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls are commands
for controlling error reporting of a floppy drive.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
---
linux-user/ioctls.h | 2 ++
linux-user/syscall_defs.h | 11 +++++++++++
linux-user/syscall_types.h | 7 +++++++
3 files changed, 20 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 0e15fe1..5a5dbdb 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -118,6 +118,8 @@
IOCTL(FDFMTTRK, IOC_W, MK_PTR(MK_STRUCT(STRUCT_format_descr)))
IOCTL(FDFMTEND, 0, TYPE_NULL)
IOCTL(FDFLUSH, 0, TYPE_NULL)
+ IOCTL(FDSETMAXERRS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
+ IOCTL(FDGETMAXERRS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_floppy_max_errors)))
IOCTL(FDRESET, 0, TYPE_NULL)
IOCTL(FDRAWCMD, 0, TYPE_NULL)
IOCTL(FDTWADDLE, 0, TYPE_NULL)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index a8fc943..741c260 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -859,6 +859,14 @@ struct target_pollfd {
/* From <linux/fd.h> */
+struct target_floppy_max_errors {
+ abi_uint abort;
+ abi_uint read_track;
+ abi_uint reset;
+ abi_uint recal;
+ abi_uint reporting;
+};
+
struct target_format_descr {
abi_uint device;
abi_uint head;
@@ -870,7 +878,10 @@ struct target_format_descr {
#define TARGET_FDFMTBEG TARGET_IO(2, 0x47)
#define TARGET_FDFMTTRK TARGET_IOW(2, 0x48, struct target_format_descr)
#define TARGET_FDFMTEND TARGET_IO(2, 0x49)
+#define TARGET_FDSETEMSGTRESH TARGET_IO(2, 0x4a)
#define TARGET_FDFLUSH TARGET_IO(2, 0x4b)
+#define TARGET_FDSETMAXERRS TARGET_IOW(2, 0x4c, struct target_floppy_max_errors)
+#define TARGET_FDGETMAXERRS TARGET_IOR(2, 0x0e, struct target_floppy_max_errors)
#define TARGET_FDRESET TARGET_IO(2, 0x54)
#define TARGET_FDRAWCMD TARGET_IO(2, 0x58)
#define TARGET_FDTWADDLE TARGET_IO(2, 0x59)
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index 57cd9e5..902ff34 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -267,6 +267,13 @@ STRUCT(blkpg_ioctl_arg,
TYPE_INT, /* datalen */
TYPE_PTRVOID) /* data */
+STRUCT(floppy_max_errors,
+ TYPE_INT, /* abort */
+ TYPE_INT, /* read_track */
+ TYPE_INT, /* reset */
+ TYPE_INT, /* recal */
+ TYPE_INT) /* reporting */
+
STRUCT(format_descr,
TYPE_INT, /* device */
TYPE_INT, /* head */
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH for 4.2 v2 6/6] linux-user: Add support for RNDRESEEDCRNG ioctl
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
` (4 preceding siblings ...)
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 5/6] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
@ 2019-07-26 10:23 ` Aleksandar Markovic
5 siblings, 0 replies; 7+ messages in thread
From: Aleksandar Markovic @ 2019-07-26 10:23 UTC (permalink / raw)
To: qemu-devel; +Cc: laurent, amarkovic
From: Aleksandar Markovic <amarkovic@wavecomp.com>
RNDRESEEDCRNG is a newer ioctl (added in kernel 4.17), and an
"ifdef" guard is used for that reason in this patch.
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
---
linux-user/ioctls.h | 3 +++
linux-user/syscall_defs.h | 1 +
2 files changed, 4 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 5a5dbdb..f5f875d 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -242,6 +242,9 @@
IOCTL(RNDADDTOENTCNT, IOC_W, MK_PTR(TYPE_INT))
IOCTL(RNDZAPENTCNT, 0, TYPE_NULL)
IOCTL(RNDCLEARPOOL, 0, TYPE_NULL)
+#ifdef RNDRESEEDCRNG
+ IOCTL(RNDRESEEDCRNG, 0, TYPE_NULL)
+#endif
IOCTL(CDROMPAUSE, 0, TYPE_NULL)
IOCTL(CDROMSTART, 0, TYPE_NULL)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 741c260..60ab71c 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -824,6 +824,7 @@ struct target_pollfd {
#define TARGET_RNDADDTOENTCNT TARGET_IOW('R', 0x01, int)
#define TARGET_RNDZAPENTCNT TARGET_IO('R', 0x04)
#define TARGET_RNDCLEARPOOL TARGET_IO('R', 0x06)
+#define TARGET_RNDRESEEDCRNG TARGET_IO('R', 0x07)
/* From <linux/fs.h> */
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-07-26 10:29 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-26 10:23 [Qemu-devel] [PATCH for 4.2 v2 0/6] linux-user: Misc patches for 4.2 Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 1/6] linux user: Add support for FDFLUSH ioctl Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 2/6] linux-user: Add support for FDMSGON and FDMSGOFF ioctls Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 3/6] linux-user: Add support for FDRESET, FDRAWCMD, FDTWADDLE, and FDEJECT ioctls Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 4/6] linux-user: Add support for FDFMTBEG, FDFMTTRK, and FDFMTEND ioctls Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 5/6] linux-user: Add support for FDSETEMSGTRESH, FDSETMAXERRS, and FDGETMAXERRS ioctls Aleksandar Markovic
2019-07-26 10:23 ` [Qemu-devel] [PATCH for 4.2 v2 6/6] linux-user: Add support for RNDRESEEDCRNG ioctl Aleksandar Markovic
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).