WWIV BBS Software

Download Documentation

WWIV is computer bulletin board system (BBS) originally written in Basic, ported to Pascal, C and finally C++.

WWIV v5 is Open Source released under the Apache License version v2.0.

Main Features

Drop-in compatible with 4.3 or later
32-bit Win32 version
32-bit and 64-bit Linux version
Telnet/SSH Server with blacklisting support
Internal X/Y/Z-Modem protocol support
Internal QWK support
Native WWIVnet networking included
FidoNet (FTN) networking support via WWIVtoss
DOOR32.SYS support
Works with SynchroNet FOSSIL driver or DOSBOX for door support.


December 1, 2019

WWIV 5.4 is now Generally Available.
New features include:
  • wwivconfig now has an option under paths for Logs directory. If set, it'll be the default location for all binary *.log files. If the WWIV_LOG_DIR environment variable or --logdir command line argument are specified, they will override this setting from wwivconfig. Like all other paths, if specified as a relative path, it is relative to the bbsdir (aka WWIV_DIR or --bbsdir).
  • Added --log_startup to all binaries. This will enable the start/stop default logging with command line arguments displayed. This is now not the default behavior anymore. If you want it displayed, either pass --log_startup or edit Logger::Init in core/log.cpp and set log_startup_ to true.
  • Created chains.json to replace chains.dat and chains.reg.
  • windows-wwiv-update has been removed from the distribution. Had lots of complaints of it not working for people, and may reappear in the future as a native C++ implementation.
  • wwivserver.exe has been removed from the distribution. wwivd is the replacement. It's source has been moved it it's own repo.
  • WINS has been removed from the distribution. It hasn't changed in several years and it's source has been moved it it's own repo. If new changes are made, it'll get it's own downloadable build for win32, or instructions for how to compile it yourself will be created.
  • Added options --save and --backup to wwivutil net contact
  • Added wwivutil net subscribers command.
  • Added wwivutil fido subscribers command
  • Improved FTN duplicate checking to check for either the MSGID (if available) or a hash of the message header.
  • Fixed STDIO based editors not working in Linux, and added an option to wwivconfig to enable it (the option is visible for all platforms, but currently only works on Linux/Unix)
  • wwivconfig can now edit callout.net from the networks menu just like it can edit fido_callouts.json with a GUI editor.
  • You can now send a FTN email using the form: "username (net/node)" or "username (zone:net/node)". Using the fake ftn node number is no longer needed.
  • Added --skip_delete to most network commands, it'll backup vs deleting packets that it's processed.
  • net.ini is now read for default values for most command line flags for all network? commands. I.e. you can add
    skip_net = true under [networkb] and it'll be the same as added --skip_net=true on the command line
  • wwivd now handles all of the callouts instead of bbs's WFC screen. Make sure you turn it on in wwivconfig to allow it to happen
  • wwivd can now execute wwiv's beginday event if specified to do so in wwivconfig
  • added --quiet flag to wwivconfig to make it not output anything unless it's doing something (nice to keep the
    wfc from displaying lots of useless info)
  • wwivd autoblocking now works (it was listed in wwivconfig back in 5.3, but never enabled in wwivd, fixed that)
  • networkc now has a --process_instance=XX flag that's used when the bbs uses it to cleanup the net.
  • Removed the '-k' flag from bbs, please use wwivutil to pack the message bases now
  • added "wwivutil print" command to print ansi files using the same ansi interpretation code in the bbs
  • If an environment variable WWIV_DIR exists, use that to locate config.dat unless --bbsdir is specified on the commandline. This works in every wwiv binary.
  • added wwivutil net list and wwivutil messages areas
  • Add --configdir to all binaries
  • Add --bindir to all binaries
  • add --logdir to all binaries
  • Add --quiet to all network binaries

July 9, 2018

WWIV 5.3.1 (Build 2740) is now Generally Available.

Changes include:
  • Fixes the dialog to create sysop account (bug #1127)

July 3, 2018

WWIV 5.3 is now Generally Available.
New features include:
  • wwivd- Replaces wwivserver and is consistent on all platforms.
  • wwivd now offers fakemailer mode and is now has (mostly) feature parity with wwivserver.exe on windows. wwivserver.exe is deprecated with the 5.3 release and will be removed for 5.4
  • INIT has been renamed to WWIVCONFIG. Please delete init.exe or ./init when you upgrade to 5.3 - wwivutil dump will now display control characters (like [^A] for control-A)
  • wwivconfig has some new parameters for how it works with 4.x WWIV installs. --4xx will launch a menu with only the items that work with 4.x (like wwivd editor and network.json editor) run "wwivconfig --help" for the latest list of command-line parameters.
  • **!!*!*!*! You need to update the outbound sub by recreating the network node it's under in subedit (J, then M, then the letter, usually A, then retype the echo tag, or just edit data/subs.json and replace 32675 with 32765 everywhere prettymuch (it's under host section))
  • WWIVbasic interpreter is available. The menu command is "RUNBASIC". Also you can run a script from the logon event by using @basic:[scriptname.bas] for the LOGON_CMD in wwiv.ini (eventually many other commands will allow you to specify a script to run instead of an external command).
  • subs.json is now the source of truth for subs data (before, subs.dat and subs.xtr were both used as source of truth, although subs.json has been written on save since 5.2)
  • Removed internal menueditor, use the one in init if needed.
  • handling type main_type_sub_list is implemented now, so receiving SUBS.LST from netup for WWIVnet type networks should work in net53.
  • Removed internal usereditor, use the one in init if needed.
  • WWIVd now exports connection information to HTTP as a JSON object. on the http port defined on init, URL: "/status"
    Example output:
    { "status": [ { "num_instances" : 3 }, { "used_instances": 0 } ] }
  • Added %I when running commands to point to the path to the temporary directory.
  • BinkP Fix (thanks apam) where all FTN addresses were not being presented when answering.
  • CMake is now the source-of-truth build system on all platforms. to build use "cmake --build . -- -j8" and not make or msbuild anymore.

June 10, 2018

A couple of updates since it's been a while since I've updated the website.
  • WWIV 5.3 is starting to come together. Please see the GitHub Burndown List for 5.3 release.
  • If you are using Windows 10, please know there's an issue with _getch not working as expected. The issue has been filed numerous times with MS. We're working around it in WWIV's BBS code, but other utilities (like unzip) seems to be affected when it's waiting on user input (which shouldn't happen in how WWIV uses unzip). Be aware and feel free to add places you run into it on bug 1113
  • Finally just updated the website to use bootstrap4, holler if something looks out of place, or sending a pull request to fix it would be even better.

December 31, 2016

WWIV 5.2 is Generally Available. Please see https://github.com/wwivbbs/wwiv/releases/tag/wwiv_5.2.0 for more information on this release.

November 21, 2016

WWIV 5.1 is Generally Available. Please see https://github.com/wwivbbs/wwiv/releases/tag/wwiv_5.1.0 for more information on this release.

September 9, 2016

New website up. Holler of there's any issues by logging an issue in the GitHub tracker for the website [here].


WWIV is Open Source software developed on GitHub.

Contribute at github.com/wwiv. Download the latest builds from our WWIV Jenkins Server


Join us on IRC

The development team and fellow SysOps hang out on IRC at the following server:

Title Link
Server irc.wwivbbs.org:6697 (use SSL)
Channel #WWIV

Click to Join IRC