From f7f01112018e0ca6e7695a4bd2a9fa85555ac652 Mon Sep 17 00:00:00 2001 From: Daniel Markstedt Date: Fri, 24 Jan 2025 22:14:31 +0100 Subject: [PATCH] Convert all READMEs to Markdown format --- doc/README.AppleTalk => APPLETALK.md | 30 +-- CONTRIBUTORS | 251 ------------------------- CONTRIBUTORS.md | 262 +++++++++++++++++++++++++++ doc/DEVELOPER => DEVELOPER.md | 16 +- NEWS => NEWS.md | 0 doc/meson.build | 19 -- meson.build | 53 +++--- 7 files changed, 318 insertions(+), 313 deletions(-) rename doc/README.AppleTalk => APPLETALK.md (91%) delete mode 100644 CONTRIBUTORS create mode 100644 CONTRIBUTORS.md rename doc/DEVELOPER => DEVELOPER.md (98%) rename NEWS => NEWS.md (100%) diff --git a/doc/README.AppleTalk b/APPLETALK.md similarity index 91% rename from doc/README.AppleTalk rename to APPLETALK.md index f2ce62969b2..06ff3eb6585 100644 --- a/doc/README.AppleTalk +++ b/APPLETALK.md @@ -1,14 +1,15 @@ This is a README for using Netatalk with AppleTalk networking. Platforms Covered: -A. Linux -B.I NetBSD -B.II Other BSDs -C. Generic + +- A. Linux +- B.I NetBSD +- B.II Other BSDs +- C. Generic ---------------------------------------------------------------- -A. Linux +# A. Linux Some Linux distributions ship with AppleTalk support out of the box (e.g. Debian) others have the kernel module but with a blacklisting @@ -22,11 +23,17 @@ Classic AFP on GNU/Linux requires that CONFIG_ATALK is compiled into the kernel or as a kernel module. To check to see if the kernel has support for AppleTalk: +``` $> dmesg | grep Apple +``` + This just parses the boot messages for any line containing 'Apple'. +``` $> lsmod | grep appletalk +``` + This checks if the appletalk kernel module is presently loaded. If you don't find it, you may have to compile a kernel and turn on @@ -41,20 +48,17 @@ Note: check your distribution documentation about editing /etc/modules.conf. For more complete information about the Linux kernel see the -Kernel-HOWTO: -http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html +[Kernel-HOWTO](http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html). A note for RedHat users: You may need to install the glibc-devel package to be able to compile Netatalk correctly. ---------------------------------------------------------------- -B.I NetBSD +# B.I NetBSD Kernel support for AppleTalk appeared in NetBSD 1.3 in April 1997. -See the release notes: - -http://www.netbsd.org/changes/changes-1.3.html +See the [release notes](http://www.netbsd.org/changes/changes-1.3.html) The source code for the kernel module is located in sys/netatalk of the NetBSD source tree. @@ -62,7 +66,7 @@ sys/netatalk of the NetBSD source tree. As of NetBSD 9.3, the netatalk kernel module is loaded by default, and made available to the atalkd daemon when it starts up. -B.II Other BSDs +# B.II Other BSDs Kernel support for AppleTalk appears in FreeBSD 2.2-current dated after 12 September 1996, as well as OpenBSD 2.2, @@ -74,7 +78,7 @@ BSD-derived operating system. ---------------------------------------------------------------- -C. Generic +# C. Generic If you would like AppleTalk support on another operating system, you will need either need a kernel module for your operating system, diff --git a/CONTRIBUTORS b/CONTRIBUTORS deleted file mode 100644 index 2f09da8d97a..00000000000 --- a/CONTRIBUTORS +++ /dev/null @@ -1,251 +0,0 @@ -Lots of thanks to the following people who've made Netatalk what it is -with their contributions. Cheers. - -Original Authors, pre-Sourceforge. - -Thanks a bunch folks, wherever you are. - - Wesley Craig - Adrian Sun - Steve Hirsch : ProDOS II support/initial Randnum - support - Robert Marinchick: initial rquota patch - Frank Morton: megatron information patch - Tim Carlson: Solaris testing - iNOUE Koichi: RPM for RedHat systems - Stefan Bethke: FreeBSD - Leland Wallace - Gerry Tomlinson : - original afile/achfile/acleandir implementation - -Recent Contributors since Sourceforge - -Sourceforge Administration: - Jeffrey Buchbinder - Matthew Keller - -Developers: Version 1.4.99 - 2.0 - Alain Richard - David R Bosso - Joe Clarke - Jonathan Newman - Lance Levsen - Matthew Keller - Andrew Morgan - Daniel E. Lautenschleger - Jeffrey Buchbinder - Sam Noble - Simon Bazley - Sebastian Rittau - Steve Freitas - Uwe Hees - Benjamin Heitmann - Bob Rogers - Burkhard Schmidt - Glenn Trewitt - Olaf Hering - Robert Cohen - Robert Stickel - Sumit Bose - Brandon Warren - Dan Wilga - Rafal Lewczuk - Didier Gautheron - Joerg Lenneis - Bjoern Fernhomberg - -Webmin Module: - Matthew Keller - Sven Mosimann/EcoLogic - Steffan Cline - Ralph Boehme (3.x version) - Daniel Markstedt (2.x and 4.x versions) - -Test Suite: - Didier Gautheron - Rafal Lewczuk - Frank Lahm - Ralph Boehme - CHANG-NING TSAI - Daniel Markstedt - -Package Maintainers and Contributors: - Arvid Norlander (Arch Linux) - Sebastian Rittau (Debian GNU/Linux) - Jonas Smedegaard (Debian GNU/Linux) - Daniel Markstedt (Debian GNU/Linux) - Andrew Bauer (Fedora) - Joe Clarke (FreeBSD) - David Rankin (NetBSD) - Hauke Fath (NetBSD) - Antonio Pastor (OpenWrt) - -NOTE: This list of package maintainers is nowhere near complete, - but rather folks who have engaged directly with the Netatalk project. - Our gratitude goes out to all package maintainers not listed here, too! - -Website Maintainers: - Andrew Morgan - -Documentation: Version 1.4.99 - 2.0 - Steve Freitas - Karen A Swanberg - Lance Levsen - Andrew Morgan - Jeffrey Buchbinder - Gjermund G Thorsen - Paul Krohn - Ryan McBeth - Simon Bazley - Rob Lineweaver - Alistair Riddell - Edmund Lam - Sebastian Rittau - Chris Blake - Thomas Kaiser - -Bug Reports: Version 1.4.99 - 2.0 - Ryan Dooley - Don Jessup - Kevin M. Myer - Lawrence Farr - Ralph Hackl - Adrian Moir - Akop Pogosian - Alistair Riddell - Axel Rose - Benjamin Lee - Brice D Ruth - Carsten Rogas - Daniel Resare - Derrik Pates - Edmund Lam - Gjermund Gusland Thorsen <90167484@mobilpost.com> - Ian Wehrman - Magnus Stenman - Mark Guertin - Matthew Geier - Miro Jurisic - Roland Schulz - Simon Roberts - Steven Karel - Thomas Schierle - Mikko - Roger - -Version 2.1 - 3.1 (ca. 2005-2018) - -Developers: Version 2.1 - 3.1 - Andrew Morgan (-2008) - Didier Gautheron (-2010) - Frank Lahm (2008-2014) - HAT (2008-2017) - Ralph Boehme (2012-2023) - Andrew Stormont (2016) - -Patches: Version 2.1 - 3.1 - Justin Mazzola Paluska - Panos Christeas - TSUBAKIMOTO Hiroya - Bolke de Bruin - Adam Goode - Martin Nagy - Tsiyon Sadiky exanet - Stephen J. Butler - Olaf Hering - Nico Golde - Tim Nowaczyk - Jiri Skala - Oliver Geisen - Timm Okke - Toshihiro Togo - Patrick Coulthard - Jonas Smedegaard - Laura Mueller - Akinori MUSHA - Brad Smith - Rob Braun - Mark Williams - Riccardo Magliocchetti - Denis Ahrens - Lee Essen - Anton Starikov - Jamie Gilbertson - Thomas Johnson - Oichinokata - Don Lee - Justin Maggard - Ross Lagerwall - Shannon Wynter - Doug Goldstein - Eiichirou UDA - Kyle VanderBeek - Phil Kauffman - David Buckley - Justin Maggard - Justin Lecher - Sam Zaydel - Scott Talbert - Denis Bychkov - Sergei Lomakov - Dave Horlick - Ruben Kerkhof - Michael Witten - -Documentation: Version 2.1 - 3.1 - Frank Lahm (Upgrade chapter) - Eiichirou UDA (Japanese localization) - HAT (Japanese localization) - - -Version 3.2 - 4.x (2019 - present) - -Developers: Version 3.2 - 4.x - Ralph Boehme (2012-2023) - Daniel Markstedt (2022-) - dgsga (2023-2024) - NJRoadfan (2023-) - -Patches: Version 3.2 - 4.x - Andrew Bauer - Jose Quinteiro - Arnout Vandecappelle (Essensium/Mind) - Andrew Walker - Simon Muras - Fabrice Fontaine - Etienne Helluy-Lafont - Hauke Fath - Christopher Kobayashi - pgajdos - psykose - Mikhail Emelchenkov - Florian Weimer - Richard van den Berg - Andy Chen - Petr Gajdos - 도환김 (down) - Eric Harmon - Derrik Pates - Simon McVittie - cy384 - Denis Yantarev - Ken McLeod - Antonio Pastor - Eric Knibbe - Eric Helgeson - -macipgw - Stefan Bethke (1997-2013) - Jason King (2015-2017) - Adam Seering (2016) - Christopher Kobayashi (2020) - - -And thanks to everyone on the netatalk-devel and netatalk-docs -lists. And in recent years, the TinkerDifferent, 68kmla, E-Maculation, -and other online communities. - -If you feel you should be listed here and aren't, please let -us know. - -Cheers! diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md new file mode 100644 index 00000000000..8fdd08bbcd3 --- /dev/null +++ b/CONTRIBUTORS.md @@ -0,0 +1,262 @@ +Lots of thanks to the following people who've made Netatalk what it is +with their contributions. Cheers. + +# Original Authors + +Thanks a bunch folks, wherever you are. + +- Wesley Craig +- Adrian Sun +- Steve Hirsch : ProDOS II support/initial Randnum +support +- Robert Marinchick: initial rquota patch +- Frank Morton: megatron information patch +- Tim Carlson: Solaris testing +- iNOUE Koichi: RPM for RedHat systems +- Stefan Bethke: FreeBSD +- Leland Wallace +- Gerry Tomlinson : +original afile/achfile/acleandir implementation + +# Community Contributors + +## Project Administration + +- Jeffrey Buchbinder +- Matthew Keller + +## Developers: Version 1.4.99 - 2.0 + +- Alain Richard +- David R Bosso +- Joe Clarke +- Jonathan Newman +- Lance Levsen +- Matthew Keller +- Andrew Morgan +- Daniel E. Lautenschleger +- Jeffrey Buchbinder +- Sam Noble +- Simon Bazley +- Sebastian Rittau +- Steve Freitas +- Uwe Hees +- Benjamin Heitmann +- Bob Rogers +- Burkhard Schmidt +- Glenn Trewitt +- Olaf Hering +- Robert Cohen +- Robert Stickel +- Sumit Bose +- Brandon Warren +- Dan Wilga +- Rafal Lewczuk +- Didier Gautheron +- Joerg Lenneis +- Bjoern Fernhomberg + +## Webmin Module + +- Matthew Keller +- Sven Mosimann/EcoLogic +- Steffan Cline +- Ralph Boehme (3.x version) +- Daniel Markstedt (2.x and 4.x versions) + +## Test Suite + +- Didier Gautheron +- Rafal Lewczuk +- Frank Lahm +- Ralph Boehme +- CHANG-NING TSAI +- Daniel Markstedt + +## Package Maintainers and Contributors + +- Arvid Norlander (Arch Linux) +- Sebastian Rittau (Debian GNU/Linux) +- Jonas Smedegaard (Debian GNU/Linux) +- Daniel Markstedt (Debian GNU/Linux) +- Andrew Bauer (Fedora) +- Joe Clarke (FreeBSD) +- David Rankin (NetBSD) +- Hauke Fath (NetBSD) +- Antonio Pastor (OpenWrt) + +> **NOTE:** This list of package maintainers is nowhere near complete, +but rather folks who have engaged directly with the Netatalk project. +Our gratitude goes out to all package maintainers not listed here, too! + +## Website Maintainers +- Andrew Morgan + +## Documentation: Version 1.4.99 - 2.0 + +- Steve Freitas +- Karen A Swanberg +- Lance Levsen +- Andrew Morgan +- Jeffrey Buchbinder +- Gjermund G Thorsen +- Paul Krohn +- Ryan McBeth +- Simon Bazley +- Rob Lineweaver +- Alistair Riddell +- Edmund Lam +- Sebastian Rittau +- Chris Blake +- Thomas Kaiser + +## Bug Reports: Version 1.4.99 - 2.0 + +- Ryan Dooley +- Don Jessup +- Kevin M. Myer +- Lawrence Farr +- Ralph Hackl +- Adrian Moir +- Akop Pogosian +- Alistair Riddell +- Axel Rose +- Benjamin Lee +- Brice D Ruth +- Carsten Rogas +- Daniel Resare +- Derrik Pates +- Edmund Lam +- Gjermund Gusland Thorsen <90167484@mobilpost.com> +- Ian Wehrman +- Magnus Stenman +- Mark Guertin +- Matthew Geier +- Miro Jurisic +- Roland Schulz +- Simon Roberts +- Steven Karel +- Thomas Schierle +- Mikko +- Roger + +## Version 2.1 - 3.1 (ca. 2005-2018) + +### Developers: Version 2.1 - 3.1 + +- Andrew Morgan (-2008) +- Didier Gautheron (-2010) +- Frank Lahm (2008-2014) +- HAT (2008-2017) +- Ralph Boehme (2012-2023) +- Andrew Stormont (2016) + +### Patches: Version 2.1 - 3.1 + +- Justin Mazzola Paluska +- Panos Christeas +- TSUBAKIMOTO Hiroya +- Bolke de Bruin +- Adam Goode +- Martin Nagy +- Tsiyon Sadiky exanet +- Stephen J. Butler +- Olaf Hering +- Nico Golde +- Tim Nowaczyk +- Jiri Skala +- Oliver Geisen +- Timm Okke +- Toshihiro Togo +- Patrick Coulthard +- Jonas Smedegaard +- Laura Mueller +- Akinori MUSHA +- Brad Smith +- Rob Braun +- Mark Williams +- Riccardo Magliocchetti +- Denis Ahrens +- Lee Essen +- Anton Starikov +- Jamie Gilbertson +- Thomas Johnson +- Oichinokata +- Don Lee +- Justin Maggard +- Ross Lagerwall +- Shannon Wynter +- Doug Goldstein +- Eiichirou UDA +- Kyle VanderBeek +- Phil Kauffman +- David Buckley +- Justin Maggard +- Justin Lecher +- Sam Zaydel +- Scott Talbert +- Denis Bychkov +- Sergei Lomakov +- Dave Horlick +- Ruben Kerkhof +- Michael Witten + +### Documentation: Version 2.1 - 3.1 + +- Frank Lahm (Upgrade chapter) +- Eiichirou UDA (Japanese localization) +- HAT (Japanese localization) + +## Version 3.2 - 4.x (2019 - present) + +### Developers: Version 3.2 - 4.x + +- Ralph Boehme (2012-2023) +- Daniel Markstedt (2022-) +- dgsga (2023-2024) +- NJRoadfan (2023-) + +### Patches: Version 3.2 - 4.x + +- Andrew Bauer +- Jose Quinteiro +- Arnout Vandecappelle (Essensium/Mind) +- Andrew Walker +- Simon Muras +- Fabrice Fontaine +- Etienne Helluy-Lafont +- Hauke Fath +- Christopher Kobayashi +- pgajdos +- psykose +- Mikhail Emelchenkov +- Florian Weimer +- Richard van den Berg +- Andy Chen +- Petr Gajdos +- 도환김 (down) +- Eric Harmon +- Derrik Pates +- Simon McVittie +- cy384 +- Denis Yantarev +- Ken McLeod +- Antonio Pastor +- Eric Knibbe +- Eric Helgeson + +### macipgw + +- Stefan Bethke (1997-2013) +- Jason King (2015-2017) +- Adam Seering (2016) +- Christopher Kobayashi (2020) + +And thanks to everyone on the netatalk-devel and netatalk-docs +lists. And in recent years, the TinkerDifferent, 68kmla, E-Maculation, +and other online communities. + +If you feel you should be listed here and aren't, please let +us know. + +Cheers! diff --git a/doc/DEVELOPER b/DEVELOPER.md similarity index 98% rename from doc/DEVELOPER rename to DEVELOPER.md index a40380ac727..b9fd321143a 100644 --- a/doc/DEVELOPER +++ b/DEVELOPER.md @@ -15,6 +15,7 @@ PAP, and ASP, while expecting the kernel to supply DDP. The complete stack looks like this on a BSD-derived system: +``` AFP AFP | | ASP PAP DSI @@ -30,6 +31,7 @@ ASP PAP DSI +-----------------------+---------------------------+ | Network-Interface | +---------------------------------------------------+ +``` * DDP is a socket to socket protocol that all other AppleTalk protocols are built on top of. @@ -54,16 +56,20 @@ of error checking macros in . These macros compare the return value of statements against 0, NULL, -1 (and maybe more, check it out). Every macro comes in four flavours: EC_CHECK, EC_CHECK_LOG, EC_CHECK_LOG_ERR and EC_CHECK_CUSTOM: + - EC_CHECK just checks the CHECK - EC_CHECK_LOG additionally logs the stringified function call. - EC_CHECK_LOG_ERR allows specifying the return value - EC_CHECK_CUSTOM allows custom actions + The macros EC_CHECK* unconditionally jump to a cleanup label where the necessary cleanup can be done alongside controlling the return value. EC_CHECK_CUSTOM doesn't do that, so an extra "goto EC_CLEANUP" may be performed as appropriate. Example: + +``` - stat() without EC macro: static int func(const char *name) { int ret = 0; @@ -111,12 +117,14 @@ int func(void) EC_CLEANUP: EC_EXIT; } +``` Ini Parser ========== The ini parser is taken from . It has been slightly modified: + - case-sensitive - "include" directive added - atalk_iniparser_getstrdup() to complemnt atalk_iniparser_getstring(), it returns allocated @@ -134,7 +142,7 @@ into separate daemons. There is one cnid_dbd daemon per netatalk volume. The underlying database structure is based on Berkeley DB. -Advantages: +## Advantages - No locking issues or leftover locks due to crashed afpd daemons any more. Since there is only one thread of control accessing the @@ -157,7 +165,7 @@ Advantages: no corrective action is necessary. In any case, database consistency is assured. -Disadvantages: +## Disadvantages - Performance in an environment of processes sharing the database (files) is potentially better for two reasons: @@ -180,7 +188,7 @@ Disadvantages: database access. -Installation and configuration +## Installation and configuration There are two executables that will be built in etc/cnid_dbd and installed into the systems binaries directories of netatalk @@ -197,7 +205,7 @@ cnid_dbd changes to the Berkeley DB directory on startup and sets effective UID and GID to owner and group of that directory. Database and supporting files should therefore be writeable by that user/group. -Current shortcomings: +## Current shortcomings: - The parameter file parsing of db_param is very simpleminded. It is easy to cause buffer overruns and the like. diff --git a/NEWS b/NEWS.md similarity index 100% rename from NEWS rename to NEWS.md diff --git a/doc/meson.build b/doc/meson.build index 8d6dfe4a479..28d4e270639 100644 --- a/doc/meson.build +++ b/doc/meson.build @@ -23,22 +23,3 @@ if build_html_docs subdir('manual') endif - -if 'readmes' in get_option('with-docs') and cmarkgfm.found() - readmes = [ - 'DEVELOPER', - ] - - if have_appletalk - readmes += [ - 'README.AppleTalk', - ] - endif - - foreach file : readmes - install_data( - file, - install_dir: datadir / 'doc/netatalk', - ) - endforeach -endif diff --git a/meson.build b/meson.build index d60f7f5004e..d6b368d6820 100644 --- a/meson.build +++ b/meson.build @@ -2343,40 +2343,41 @@ build_readme_docs = false if 'readmes' in get_option('with-docs') and cmarkgfm.found() build_readme_docs = true - readmes = [ - 'CONTRIBUTORS', - 'NEWS', - ] - - foreach file : readmes - install_data( - file, - install_dir: datadir / 'doc/netatalk', - ) - endforeach - readmes_md = [ + 'CONTRIBUTORS', + 'DEVELOPER', 'DOCKER', 'INSTALL', + 'NEWS', 'README', 'SECURITY', ] + if have_appletalk + readmes_md += [ + 'APPLETALK', + ] + endif + foreach file : readmes_md - custom_target( - 'readmes_' + file, - input: file + '.md', - output: file + '.txt', - command: [ - cmarkgfm, - '--width', '80', - '--to', 'plaintext', - '@INPUT@', - ], - capture: true, - install: true, - install_dir: datadir / 'doc/netatalk', - ) + if get_option('with-website') + install_data(file + '.md', install_dir: manual_install_path) + else + custom_target( + 'readmes_' + file, + input: file + '.md', + output: file + '.txt', + command: [ + cmarkgfm, + '--width', '80', + '--to', 'plaintext', + '@INPUT@', + ], + capture: true, + install: true, + install_dir: datadir / 'doc/netatalk', + ) + endif endforeach else warning('cmark-gfm is required for markdown to text conversion of READMEs')