diff --git a/nselib/unpwdb.lua b/nselib/unpwdb.lua
index 9a2c6973a..5b758f2b1 100644
--- a/nselib/unpwdb.lua
+++ b/nselib/unpwdb.lua
@@ -8,6 +8,18 @@
-- The closures can take an argument of "reset" to rewind the list
-- to the beginning.
--
+-- To avoid taking a long time against slow services, the closures will
+-- stop returning values (start returning nil) after a
+-- certain time. The time depends on the timing template level, and is
+-- * -T3 or less: 10 minutes
+-- * -T4: 5 minutes
+-- * -T5: 3 minutes
+-- Time limits are increased by 50% if a custom username or password
+-- database is used with the userdb or passdb
+-- script arguments. You can control the time limit directly with the
+-- unpwdb.timelimit script argument. Use
+-- unpwdb.timelimit=0 to disable the time limit.
+--
-- You can select your own username and/or password database to read from with
-- the script arguments userdb and passdb,
-- respectively. Comments are allowed in these files, prefixed with
@@ -32,6 +44,10 @@
-- usernames("reset")
-- end
--
+-- @usage
+-- nmap --script-args userdb=/tmp/user.lst
+-- nmap --script-args unpwdb.timelimit=500
+--
-- @args userdb The filename of an alternate username database.
-- @args passdb The filename of an alternate password database.
-- @args unpwdb.userlimit The maximum number of usernames
@@ -41,7 +57,10 @@
-- passwords will return
-- (default unlimited).
-- @args unpwdb.timelimit The maximum amount of time (in seconds) that any
--- iterator will run before stopping.
+-- iterator will run before stopping. The default
+-- depends on the timing template level (see the module
+-- description). Use the value 0 to disable
+-- the time limit.
-- @author Kris Katterjohn 06/2008
-- @copyright Same as Nmap--See http://nmap.org/book/man-legal.html