swisscmd.h 42 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213
  1. /*++
  2. Copyright (c) 2013 Minoca Corp. All Rights Reserved
  3. Module Name:
  4. swisscmd.h
  5. Abstract:
  6. This header contains definitions for the support Swiss commands.
  7. Author:
  8. Evan Green 5-Jun-2013
  9. --*/
  10. //
  11. // ------------------------------------------------------------------- Includes
  12. //
  13. //
  14. // ---------------------------------------------------------------- Definitions
  15. //
  16. //
  17. // ------------------------------------------------------ Data Type Definitions
  18. //
  19. //
  20. // -------------------------------------------------------------------- Globals
  21. //
  22. //
  23. // -------------------------------------------------------- Function Prototypes
  24. //
  25. //
  26. // Command names.
  27. //
  28. #define SH_COMMAND_NAME "sh"
  29. #define SH_COMMAND_DESCRIPTION "Runs a Bourne compatible shell."
  30. #define CAT_COMMAND_NAME "cat"
  31. #define CAT_COMMAND_DESCRIPTION "Print the contents of a file."
  32. #define ECHO_COMMAND_NAME "echo"
  33. #define ECHO_COMMAND_DESCRIPTION "Prints arguments."
  34. #define TEST_COMMAND_NAME "test"
  35. #define TEST_COMMAND_DESCRIPTION \
  36. "Performs file, string, and integer comparisons."
  37. #define TEST_COMMAND_NAME2 "["
  38. #define TEST_COMMAND_DESCRIPTON2 \
  39. "Same as test but needs a ] as the last argument."
  40. #define MKDIR_COMMAND_NAME "mkdir"
  41. #define MKDIR_COMMAND_DESCRIPTION "Create a directory."
  42. #define LS_COMMAND_NAME "ls"
  43. #define LS_COMMAND_DESCRIPTION "List the contents of a directory."
  44. #define RM_COMMAND_NAME "rm"
  45. #define RM_COMMAND_DESCRIPTION "Delete a file."
  46. #define RMDIR_COMMAND_NAME "rmdir"
  47. #define RMDIR_COMMAND_DESCRIPTION "Delete an empty directory."
  48. #define MV_COMMAND_NAME "mv"
  49. #define MV_COMMAND_DESCRIPTION "Move files."
  50. #define CP_COMMAND_NAME "cp"
  51. #define CP_COMMAND_DESCRIPTION "Copy files."
  52. #define SED_COMMAND_NAME "sed"
  53. #define SED_COMMAND_DESCRIPTION "Stream editor, edits files with patterns."
  54. #define PRINTF_COMMAND_NAME "printf"
  55. #define PRINTF_COMMAND_DESCRIPTION "Formatted echo."
  56. #define EXPR_COMMAND_NAME "expr"
  57. #define EXPR_COMMAND_DESCRIPTION "Evaluate basic mathematical expressions."
  58. #define CHMOD_COMMAND_NAME "chmod"
  59. #define CHMOD_COMMAND_DESCRIPTION "Change file permissions."
  60. #define GREP_COMMAND_NAME "grep"
  61. #define GREP_COMMAND_DESCRIPTION "Search through files."
  62. #define EGREP_COMMAND_NAME "egrep"
  63. #define EGREP_COMMAND_DESCRIPTION "Same as grep -E."
  64. #define FGREP_COMMAND_NAME "fgrep"
  65. #define FGREP_COMMAND_DESCRIPTION "Same as grep -f."
  66. #define UNAME_COMMAND_NAME "uname"
  67. #define UNAME_COMMAND_DESCRIPTION "Print system identification."
  68. #define BASENAME_COMMAND_NAME "basename"
  69. #define BASENAME_COMMAND_DESCRIPTION "Get the final component of a file path."
  70. #define DIRNAME_COMMAND_NAME "dirname"
  71. #define DIRNAME_COMMAND_DESCRIPTION \
  72. "Get everything but the final component of a file path."
  73. #define SORT_COMMAND_NAME "sort"
  74. #define SORT_COMMAND_DESCRIPTION "Sort input lines."
  75. #define TR_COMMAND_NAME "tr"
  76. #define TR_COMMAND_DESCRIPTION "Translate characters."
  77. #define TOUCH_COMMAND_NAME "touch"
  78. #define TOUCH_COMMAND_DESCRIPTION "Change file modification times."
  79. #define TRUE_COMMAND_NAME "true"
  80. #define TRUE_COMMAND_DESCRIPTION "Simply return zero."
  81. #define FALSE_COMMAND_NAME "false"
  82. #define FALSE_COMMAND_DESCRIPTION "Simply return non-zero."
  83. #define PWD_COMMAND_NAME "pwd"
  84. #define PWD_COMMAND_DESCRIPTION "Print the current working directory."
  85. #define ENV_COMMAND_NAME "env"
  86. #define ENV_COMMAND_DESCRIPTION \
  87. "Modify the environment and run another utility."
  88. #define FIND_COMMAND_NAME "find"
  89. #define FIND_COMMAND_DESCRIPTION "Locate files and directories."
  90. #define CMP_COMMAND_NAME "cmp"
  91. #define CMP_COMMAND_DESCRIPTION "Compare files for equality."
  92. #define UNIQ_COMMAND_NAME "uniq"
  93. #define UNIQ_COMMAND_DESCRIPTION "Remove duplicate lines from sorted file."
  94. #define DIFF_COMMAND_NAME "diff"
  95. #define DIFF_COMMAND_DESCRIPTION \
  96. "Describe differences between files or directories."
  97. #define DATE_COMMAND_NAME "date"
  98. #define DATE_COMMAND_DESCRIPTION \
  99. "Get or set the current date and time."
  100. #define OD_COMMAND_NAME "od"
  101. #define OD_COMMAND_DESCRIPTION "Octal dump: print file contents unambiguously."
  102. #define SLEEP_COMMAND_NAME "sleep"
  103. #define SLEEP_COMMAND_DESCRIPTION "Suspend execution for a bit."
  104. #define MKTEMP_COMMAND_NAME "mktemp"
  105. #define MKTEMP_COMMAND_DESCRIPTION "Create a temporary file or directory."
  106. #define TAIL_COMMAND_NAME "tail"
  107. #define TAIL_COMMAND_DESCRIPTION "Print the first or last part of a file."
  108. #define WC_COMMAND_NAME "wc"
  109. #define WC_COMMAND_DESCRIPTION "Count words, lines, and characters in a file."
  110. #define LN_COMMAND_NAME "ln"
  111. #define LN_COMMAND_DESCRIPTION "Create links between files."
  112. #define TIME_COMMAND_NAME "time"
  113. #define TIME_COMMAND_DESCRIPTION "Time a program's execution."
  114. #define CECHO_COMMAND_NAME "cecho"
  115. #define CECHO_COMMAND_DESCRIPTION "Print arguments in color."
  116. #define CUT_COMMAND_NAME "cut"
  117. #define CUT_COMMAND_DESCRIPTION \
  118. "Print a selected portion of each line in a file."
  119. #define SPLIT_COMMAND_NAME "split"
  120. #define SPLIT_COMMAND_DESCRIPTION "Split a file into multiple smaller files."
  121. #define PS_COMMAND_NAME "ps"
  122. #define PS_COMMAND_DESCRIPTION "Print process status."
  123. #define KILL_COMMAND_NAME "kill"
  124. #define KILL_COMMAND_DESCRIPTION "Terminate or signal processes."
  125. #define COMM_COMMAND_NAME "comm"
  126. #define COMM_COMMAND_DESCRIPTION \
  127. "Print lines common to two sorted files, or unique to each one."
  128. #define REBOOT_COMMAND_NAME "reboot"
  129. #define REBOOT_COMMAND_DESCRIPTION "Reset the system."
  130. #define ID_COMMAND_NAME "id"
  131. #define ID_COMMAND_DESCRIPTION "Print the current user and group IDs."
  132. #define CHROOT_COMMAND_NAME "chroot"
  133. #define CHROOT_COMMAND_DESCRIPTION \
  134. "Execute a command with a limited file system perspective."
  135. #define CHOWN_COMMAND_NAME "chown"
  136. #define CHOWN_COMMAND_DESCRIPTION \
  137. "Change the ownership of a file."
  138. #define USERADD_COMMAND_NAME "useradd"
  139. #define USERADD_COMMAND_DESCRIPTION "Add a new user"
  140. #define USERDEL_COMMAND_NAME "userdel"
  141. #define USERDEL_COMMAND_DESCRIPTION "Delete a user"
  142. #define GROUPADD_COMMAND_NAME "groupadd"
  143. #define GROUPADD_COMMAND_DESCRIPTION "Add a new user group"
  144. #define GROUPDEL_COMMAND_NAME "groupdel"
  145. #define GROUPDEL_COMMAND_DESCRIPTION "Delete a user group"
  146. #define PASSWD_COMMAND_NAME "passwd"
  147. #define PASSWD_COMMAND_DESCRIPTION "Change a user's password"
  148. #define CHPASSWD_COMMAND_NAME "chpasswd"
  149. #define CHPASSWD_COMMAND_DESCRIPTION "Change passwords in bulk"
  150. #define VLOCK_COMMAND_NAME "vlock"
  151. #define VLOCK_COMMAND_DESCRIPTION "Locks a console until a password is entered"
  152. #define SU_COMMAND_NAME "su"
  153. #define SU_COMMAND_DESCRIPTION "Run a command as another user"
  154. #define SULOGIN_COMMAND_NAME "sulogin"
  155. #define SULOGIN_COMMAND_DESCRIPTION "Single-user login utility"
  156. #define LOGIN_COMMAND_NAME "login"
  157. #define LOGIN_COMMAND_DESCRIPTION "Start a new user session"
  158. #define GETTY_COMMAND_NAME "getty"
  159. #define GETTY_COMMAND_DESCRIPTION "Set up a terminal and invoke login"
  160. #define INIT_COMMAND_NAME "init"
  161. #define INIT_COMMAND_DESCRIPTION "Initialize the machine"
  162. #define START_STOP_DAEMON_NAME "start-stop-daemon"
  163. #define START_STOP_DAEMON_DESCRIPTION "Start or stop a system process"
  164. #define READLINK_COMMAND_NAME "readlink"
  165. #define READLINK_COMMAND_DESCRIPTION "Read the destination of a symbolic link"
  166. #define NL_COMMAND_NAME "nl"
  167. #define NL_COMMAND_DESCRIPTION "Number lines"
  168. #define TEE_COMMAND_NAME "tee"
  169. #define TEE_COMMAND_DESCRIPTION "Copy stdin to stdout and files"
  170. #define INSTALL_COMMAND_NAME "install"
  171. #define INSTALL_COMMAND_DESCRIPTION "Copy files to their final location"
  172. #define XARGS_COMMAND_NAME "xargs"
  173. #define XARGS_COMMAND_DESCRIPTION \
  174. "Invoke a command using arguments from standard in"
  175. #define SUM_COMMAND_NAME "sum"
  176. #define SUM_COMMAND_DESCRIPTION "Sum the bytes in a file"
  177. #define HEAD_COMMAND_NAME "head"
  178. #define HEAD_COMMAND_DESCRIPTION "Print the first 10 or so lines of a file"
  179. #define DD_COMMAND_NAME "dd"
  180. #define DD_COMMAND_DESCRIPTION "Copy blocks from source to destination"
  181. #define MKFIFO_COMMAND_NAME "mkfifo"
  182. #define MKFIFO_COMMAND_DESCRIPTION "Create a named pipe"
  183. #define DW_COMMAND_NAME "dw"
  184. #define DW_COMMAND_DESCRIPTION "Passes idle time"
  185. #define TELNETD_COMMAND_NAME "telnetd"
  186. #define TELNETD_COMMAND_DESCRIPTION "Simple telnet server"
  187. #define TELNET_COMMAND_NAME "telnet"
  188. #define TELNET_COMMAND_DESCRIPTION "Telnet client"
  189. #define NPROC_COMMAND_NAME "nproc"
  190. #define NPROC_COMMAND_DESCRIPTION "Returns the number of processors"
  191. #define SEQ_COMMAND_NAME "seq"
  192. #define SEQ_COMMAND_DESCRIPTION "Print a sequence of numbers"
  193. #define STTY_COMMAND_NAME "stty"
  194. #define STTY_COMMAND_DESCRIPTION "Set terminal attributes"
  195. #define WHICH_COMMAND_NAME "which"
  196. #define WHICH_COMMAND_DESCRIPTION "Print the full path of an executable"
  197. //
  198. // Command entry point prototypes.
  199. //
  200. INT
  201. ShMain (
  202. INT ArgumentCount,
  203. CHAR **Arguments
  204. );
  205. /*++
  206. Routine Description:
  207. This routine implements the main entry point for the shell app.
  208. Arguments:
  209. ArgumentCount - Supplies the number of arguments on the command line.
  210. Arguments - Supplies an array of pointers to strings representing the
  211. arguments.
  212. Return Value:
  213. 0 on success.
  214. Non-zero on failure.
  215. --*/
  216. INT
  217. CatMain (
  218. INT ArgumentCount,
  219. CHAR **Arguments
  220. );
  221. /*++
  222. Routine Description:
  223. This routine is the main entry point for the cat program.
  224. Arguments:
  225. ArgumentCount - Supplies the number of command line arguments the program
  226. was invoked with.
  227. Arguments - Supplies a tokenized array of command line arguments.
  228. Return Value:
  229. Returns an integer exit code. 0 for success, nonzero otherwise.
  230. --*/
  231. INT
  232. EchoMain (
  233. INT ArgumentCount,
  234. CHAR **Arguments
  235. );
  236. /*++
  237. Routine Description:
  238. This routine is the main entry point for the echo program.
  239. Arguments:
  240. ArgumentCount - Supplies the number of command line arguments the program
  241. was invoked with.
  242. Arguments - Supplies a tokenized array of command line arguments.
  243. Return Value:
  244. 0 always.
  245. --*/
  246. INT
  247. TestMain (
  248. INT ArgumentCount,
  249. CHAR **Arguments
  250. );
  251. /*++
  252. Routine Description:
  253. This routine implements the test application entry point.
  254. Arguments:
  255. ArgumentCount - Supplies the number of arguments on the command line.
  256. Arguments - Supplies an array of pointers to strings representing the
  257. arguments.
  258. Return Value:
  259. 0 or 1 if the evaluation succeeds.
  260. >1 on failure.
  261. --*/
  262. INT
  263. MkdirMain (
  264. INT ArgumentCount,
  265. CHAR **Arguments
  266. );
  267. /*++
  268. Routine Description:
  269. This routine is the main entry point for the mkdir program.
  270. Arguments:
  271. ArgumentCount - Supplies the number of command line arguments the program
  272. was invoked with.
  273. Arguments - Supplies a tokenized array of command line arguments.
  274. Return Value:
  275. Returns an integer exit code. 0 for success, nonzero otherwise.
  276. --*/
  277. INT
  278. LsMain (
  279. INT ArgumentCount,
  280. CHAR **Arguments
  281. );
  282. /*++
  283. Routine Description:
  284. This routine implements the main entry point for the ls (list directory)
  285. utility.
  286. Arguments:
  287. ArgumentCount - Supplies the number of arguments on the command line.
  288. Arguments - Supplies an array of pointers to strings representing the
  289. arguments.
  290. Return Value:
  291. 0 on success.
  292. Non-zero on failure.
  293. --*/
  294. INT
  295. RmMain (
  296. INT ArgumentCount,
  297. CHAR **Arguments
  298. );
  299. /*++
  300. Routine Description:
  301. This routine is the main entry point for the rm program.
  302. Arguments:
  303. ArgumentCount - Supplies the number of command line arguments the program
  304. was invoked with.
  305. Arguments - Supplies a tokenized array of command line arguments.
  306. Return Value:
  307. Returns an integer exit code. 0 for success, nonzero otherwise.
  308. --*/
  309. INT
  310. RmdirMain (
  311. INT ArgumentCount,
  312. CHAR **Arguments
  313. );
  314. /*++
  315. Routine Description:
  316. This routine is the main entry point for the rmdir program.
  317. Arguments:
  318. ArgumentCount - Supplies the number of command line arguments the program
  319. was invoked with.
  320. Arguments - Supplies a tokenized array of command line arguments.
  321. Return Value:
  322. Returns an integer exit code. 0 for success, nonzero otherwise.
  323. --*/
  324. INT
  325. MvMain (
  326. INT ArgumentCount,
  327. CHAR **Arguments
  328. );
  329. /*++
  330. Routine Description:
  331. This routine is the main entry point for the mv utility.
  332. Arguments:
  333. ArgumentCount - Supplies the number of command line arguments the program
  334. was invoked with.
  335. Arguments - Supplies a tokenized array of command line arguments.
  336. Return Value:
  337. Returns an integer exit code. 0 for success, nonzero otherwise.
  338. --*/
  339. INT
  340. CpMain (
  341. INT ArgumentCount,
  342. CHAR **Arguments
  343. );
  344. /*++
  345. Routine Description:
  346. This routine is the main entry point for the cp utility.
  347. Arguments:
  348. ArgumentCount - Supplies the number of command line arguments the program
  349. was invoked with.
  350. Arguments - Supplies a tokenized array of command line arguments.
  351. Return Value:
  352. Returns an integer exit code. 0 for success, nonzero otherwise.
  353. --*/
  354. INT
  355. SedMain (
  356. INT ArgumentCount,
  357. CHAR **Arguments
  358. );
  359. /*++
  360. Routine Description:
  361. This routine implements the main entry point for the sed (stream editor)
  362. utility.
  363. Arguments:
  364. ArgumentCount - Supplies the number of arguments on the command line.
  365. Arguments - Supplies an array of pointers to strings representing the
  366. arguments.
  367. Return Value:
  368. 0 on success.
  369. Non-zero on failure.
  370. --*/
  371. INT
  372. PrintfMain (
  373. INT ArgumentCount,
  374. CHAR **Arguments
  375. );
  376. /*++
  377. Routine Description:
  378. This routine implements the main entry point for the printf utility.
  379. Arguments:
  380. ArgumentCount - Supplies the number of arguments on the command line.
  381. Arguments - Supplies an array of pointers to strings representing the
  382. arguments.
  383. Return Value:
  384. 0 on success.
  385. Non-zero on failure.
  386. --*/
  387. INT
  388. ExprMain (
  389. INT ArgumentCount,
  390. CHAR **Arguments
  391. );
  392. /*++
  393. Routine Description:
  394. This routine implements the main entry point for the expr utility.
  395. Arguments:
  396. ArgumentCount - Supplies the number of arguments on the command line.
  397. Arguments - Supplies an array of pointers to strings representing the
  398. arguments.
  399. Return Value:
  400. 0 on success.
  401. Non-zero on failure.
  402. --*/
  403. INT
  404. ChmodMain (
  405. INT ArgumentCount,
  406. CHAR **Arguments
  407. );
  408. /*++
  409. Routine Description:
  410. This routine implements the main entry point for the chmod utility.
  411. Arguments:
  412. ArgumentCount - Supplies the number of arguments on the command line.
  413. Arguments - Supplies an array of pointers to strings representing the
  414. arguments.
  415. Return Value:
  416. 0 on success.
  417. Non-zero on failure.
  418. --*/
  419. INT
  420. EgrepMain (
  421. INT ArgumentCount,
  422. CHAR **Arguments
  423. );
  424. /*++
  425. Routine Description:
  426. This routine implements the main entry point for the egrep utility, which
  427. searches for a pattern within a file. It is equivalent to grep -E.
  428. Arguments:
  429. ArgumentCount - Supplies the number of arguments on the command line.
  430. Arguments - Supplies an array of pointers to strings representing the
  431. arguments.
  432. Return Value:
  433. 0 on success.
  434. Non-zero on failure.
  435. --*/
  436. INT
  437. FgrepMain (
  438. INT ArgumentCount,
  439. CHAR **Arguments
  440. );
  441. /*++
  442. Routine Description:
  443. This routine implements the main entry point for the fgrep utility, which
  444. searches for a pattern within a file. It is equivalent to grep -f.
  445. Arguments:
  446. ArgumentCount - Supplies the number of arguments on the command line.
  447. Arguments - Supplies an array of pointers to strings representing the
  448. arguments.
  449. Return Value:
  450. 0 on success.
  451. Non-zero on failure.
  452. --*/
  453. INT
  454. GrepMain (
  455. INT ArgumentCount,
  456. CHAR **Arguments
  457. );
  458. /*++
  459. Routine Description:
  460. This routine implements the main entry point for the grep utility, which
  461. searches for a pattern within a file.
  462. Arguments:
  463. ArgumentCount - Supplies the number of arguments on the command line.
  464. Arguments - Supplies an array of pointers to strings representing the
  465. arguments.
  466. Return Value:
  467. 0 on success.
  468. Non-zero on failure.
  469. --*/
  470. INT
  471. UnameMain (
  472. INT ArgumentCount,
  473. CHAR **Arguments
  474. );
  475. /*++
  476. Routine Description:
  477. This routine is the main entry point for the uname utility.
  478. Arguments:
  479. ArgumentCount - Supplies the number of command line arguments the program
  480. was invoked with.
  481. Arguments - Supplies a tokenized array of command line arguments.
  482. Return Value:
  483. Returns an integer exit code. 0 for success, nonzero otherwise.
  484. --*/
  485. INT
  486. DirnameMain (
  487. INT ArgumentCount,
  488. CHAR **Arguments
  489. );
  490. /*++
  491. Routine Description:
  492. This routine is the main entry point for the dirname utility.
  493. Arguments:
  494. ArgumentCount - Supplies the number of command line arguments the program
  495. was invoked with.
  496. Arguments - Supplies a tokenized array of command line arguments.
  497. Return Value:
  498. 0 on success.
  499. Returns a positive value if an error occurred.
  500. --*/
  501. INT
  502. BasenameMain (
  503. INT ArgumentCount,
  504. CHAR **Arguments
  505. );
  506. /*++
  507. Routine Description:
  508. This routine is the main entry point for the basename utility.
  509. Arguments:
  510. ArgumentCount - Supplies the number of command line arguments the program
  511. was invoked with.
  512. Arguments - Supplies a tokenized array of command line arguments.
  513. Return Value:
  514. 0 on success.
  515. Returns a positive value if an error occurred.
  516. --*/
  517. INT
  518. SortMain (
  519. INT ArgumentCount,
  520. CHAR **Arguments
  521. );
  522. /*++
  523. Routine Description:
  524. This routine is the main entry point for the cp utility.
  525. Arguments:
  526. ArgumentCount - Supplies the number of command line arguments the program
  527. was invoked with.
  528. Arguments - Supplies a tokenized array of command line arguments.
  529. Return Value:
  530. Returns an integer exit code. 0 for success, nonzero otherwise.
  531. --*/
  532. INT
  533. TrMain (
  534. INT ArgumentCount,
  535. CHAR **Arguments
  536. );
  537. /*++
  538. Routine Description:
  539. This routine is the main entry point for the tr utility.
  540. Arguments:
  541. ArgumentCount - Supplies the number of command line arguments the program
  542. was invoked with.
  543. Arguments - Supplies a tokenized array of command line arguments.
  544. Return Value:
  545. Returns an integer exit code. 0 for success, nonzero otherwise.
  546. --*/
  547. INT
  548. TouchMain (
  549. INT ArgumentCount,
  550. CHAR **Arguments
  551. );
  552. /*++
  553. Routine Description:
  554. This routine is the main entry point for the touch utility.
  555. Arguments:
  556. ArgumentCount - Supplies the number of command line arguments the program
  557. was invoked with.
  558. Arguments - Supplies a tokenized array of command line arguments.
  559. Return Value:
  560. Returns an integer exit code. 0 for success, nonzero otherwise.
  561. --*/
  562. INT
  563. TrueMain (
  564. INT ArgumentCount,
  565. CHAR **Arguments
  566. );
  567. /*++
  568. Routine Description:
  569. This routine is the main entry point for the true utility.
  570. Arguments:
  571. ArgumentCount - Supplies the number of command line arguments the program
  572. was invoked with.
  573. Arguments - Supplies a tokenized array of command line arguments.
  574. Return Value:
  575. 0 always.
  576. --*/
  577. INT
  578. FalseMain (
  579. INT ArgumentCount,
  580. CHAR **Arguments
  581. );
  582. /*++
  583. Routine Description:
  584. This routine is the main entry point for the false utility.
  585. Arguments:
  586. ArgumentCount - Supplies the number of command line arguments the program
  587. was invoked with.
  588. Arguments - Supplies a tokenized array of command line arguments.
  589. Return Value:
  590. 1 always.
  591. --*/
  592. INT
  593. PwdMain (
  594. INT ArgumentCount,
  595. CHAR **Arguments
  596. );
  597. /*++
  598. Routine Description:
  599. This routine is the main entry point for the pwd (print working directory)
  600. utility.
  601. Arguments:
  602. ArgumentCount - Supplies the number of command line arguments the program
  603. was invoked with.
  604. Arguments - Supplies a tokenized array of command line arguments.
  605. Return Value:
  606. 0 on success.
  607. Non-zero error on failure.
  608. --*/
  609. INT
  610. EnvMain (
  611. INT ArgumentCount,
  612. CHAR **Arguments
  613. );
  614. /*++
  615. Routine Description:
  616. This routine is the main entry point for the env utility.
  617. Arguments:
  618. ArgumentCount - Supplies the number of command line arguments the program
  619. was invoked with.
  620. Arguments - Supplies a tokenized array of command line arguments.
  621. Return Value:
  622. Returns an integer exit code. 0 for success, nonzero otherwise.
  623. --*/
  624. INT
  625. FindMain (
  626. INT ArgumentCount,
  627. CHAR **Arguments
  628. );
  629. /*++
  630. Routine Description:
  631. This routine is the main entry point for the find utility.
  632. Arguments:
  633. ArgumentCount - Supplies the number of command line arguments the program
  634. was invoked with.
  635. Arguments - Supplies a tokenized array of command line arguments.
  636. Return Value:
  637. Returns an integer exit code. 0 for success, nonzero otherwise.
  638. --*/
  639. INT
  640. CmpMain (
  641. INT ArgumentCount,
  642. CHAR **Arguments
  643. );
  644. /*++
  645. Routine Description:
  646. This routine is the main entry point for the cmp (compare) utility.
  647. Arguments:
  648. ArgumentCount - Supplies the number of command line arguments the program
  649. was invoked with.
  650. Arguments - Supplies a tokenized array of command line arguments.
  651. Return Value:
  652. Returns an integer exit code. 0 for success, nonzero otherwise.
  653. --*/
  654. INT
  655. UniqMain (
  656. INT ArgumentCount,
  657. CHAR **Arguments
  658. );
  659. /*++
  660. Routine Description:
  661. This routine is the main entry point for the cp utility.
  662. Arguments:
  663. ArgumentCount - Supplies the number of command line arguments the program
  664. was invoked with.
  665. Arguments - Supplies a tokenized array of command line arguments.
  666. Return Value:
  667. Returns an integer exit code. 0 for success, nonzero otherwise.
  668. --*/
  669. INT
  670. DiffMain (
  671. INT ArgumentCount,
  672. CHAR **Arguments
  673. );
  674. /*++
  675. Routine Description:
  676. This routine is the main entry point for the diff utility.
  677. Arguments:
  678. ArgumentCount - Supplies the number of command line arguments the program
  679. was invoked with.
  680. Arguments - Supplies a tokenized array of command line arguments.
  681. Return Value:
  682. Returns an integer exit code. 0 for success, nonzero otherwise.
  683. --*/
  684. INT
  685. DateMain (
  686. INT ArgumentCount,
  687. CHAR **Arguments
  688. );
  689. /*++
  690. Routine Description:
  691. This routine is the main entry point for the date utility.
  692. Arguments:
  693. ArgumentCount - Supplies the number of command line arguments the program
  694. was invoked with.
  695. Arguments - Supplies a tokenized array of command line arguments.
  696. Return Value:
  697. Returns an integer exit code. 0 for success, nonzero otherwise.
  698. --*/
  699. INT
  700. OdMain (
  701. INT ArgumentCount,
  702. CHAR **Arguments
  703. );
  704. /*++
  705. Routine Description:
  706. This routine is the main entry point for the cp utility.
  707. Arguments:
  708. ArgumentCount - Supplies the number of command line arguments the program
  709. was invoked with.
  710. Arguments - Supplies a tokenized array of command line arguments.
  711. Return Value:
  712. Returns an integer exit code. 0 for success, nonzero otherwise.
  713. --*/
  714. INT
  715. SleepMain (
  716. INT ArgumentCount,
  717. CHAR **Arguments
  718. );
  719. /*++
  720. Routine Description:
  721. This routine is the main entry point for the sleep utility.
  722. Arguments:
  723. ArgumentCount - Supplies the number of command line arguments the program
  724. was invoked with.
  725. Arguments - Supplies a tokenized array of command line arguments.
  726. Return Value:
  727. 1 always.
  728. --*/
  729. INT
  730. MktempMain (
  731. INT ArgumentCount,
  732. CHAR **Arguments
  733. );
  734. /*++
  735. Routine Description:
  736. This routine is the main entry point for the mktemp utility.
  737. Arguments:
  738. ArgumentCount - Supplies the number of command line arguments the program
  739. was invoked with.
  740. Arguments - Supplies a tokenized array of command line arguments.
  741. Return Value:
  742. Returns an integer exit code. 0 for success, nonzero otherwise.
  743. --*/
  744. INT
  745. TailMain (
  746. INT ArgumentCount,
  747. CHAR **Arguments
  748. );
  749. /*++
  750. Routine Description:
  751. This routine is the main entry point for the tail utility.
  752. Arguments:
  753. ArgumentCount - Supplies the number of command line arguments the program
  754. was invoked with.
  755. Arguments - Supplies a tokenized array of command line arguments.
  756. Return Value:
  757. Returns an integer exit code. 0 for success, nonzero otherwise.
  758. --*/
  759. INT
  760. WcMain (
  761. INT ArgumentCount,
  762. CHAR **Arguments
  763. );
  764. /*++
  765. Routine Description:
  766. This routine is the main entry point for the wc utility.
  767. Arguments:
  768. ArgumentCount - Supplies the number of command line arguments the program
  769. was invoked with.
  770. Arguments - Supplies a tokenized array of command line arguments.
  771. Return Value:
  772. Returns an integer exit code. 0 for success, nonzero otherwise.
  773. --*/
  774. INT
  775. LnMain (
  776. INT ArgumentCount,
  777. CHAR **Arguments
  778. );
  779. /*++
  780. Routine Description:
  781. This routine is the main entry point for the ln (link) utility.
  782. Arguments:
  783. ArgumentCount - Supplies the number of command line arguments the program
  784. was invoked with.
  785. Arguments - Supplies a tokenized array of command line arguments.
  786. Return Value:
  787. Returns an integer exit code. 0 for success, nonzero otherwise.
  788. --*/
  789. INT
  790. TimeMain (
  791. INT ArgumentCount,
  792. CHAR **Arguments
  793. );
  794. /*++
  795. Routine Description:
  796. This routine is the main entry point for the time utility.
  797. Arguments:
  798. ArgumentCount - Supplies the number of command line arguments the program
  799. was invoked with.
  800. Arguments - Supplies a tokenized array of command line arguments.
  801. Return Value:
  802. Returns an integer exit code. 0 for success, nonzero otherwise.
  803. --*/
  804. INT
  805. ColorEchoMain (
  806. INT ArgumentCount,
  807. CHAR **Arguments
  808. );
  809. /*++
  810. Routine Description:
  811. This routine is the main entry point for the color echo program.
  812. Arguments:
  813. ArgumentCount - Supplies the number of command line arguments the program
  814. was invoked with.
  815. Arguments - Supplies a tokenized array of command line arguments.
  816. Return Value:
  817. 0 on success.
  818. Non-zero on failure.
  819. --*/
  820. INT
  821. CutMain (
  822. INT ArgumentCount,
  823. CHAR **Arguments
  824. );
  825. /*++
  826. Routine Description:
  827. This routine is the main entry point for the cut utility.
  828. Arguments:
  829. ArgumentCount - Supplies the number of command line arguments the program
  830. was invoked with.
  831. Arguments - Supplies a tokenized array of command line arguments.
  832. Return Value:
  833. Returns an integer exit code. 0 for success, nonzero otherwise.
  834. --*/
  835. INT
  836. SplitMain (
  837. INT ArgumentCount,
  838. CHAR **Arguments
  839. );
  840. /*++
  841. Routine Description:
  842. This routine is the main entry point for the split utility.
  843. Arguments:
  844. ArgumentCount - Supplies the number of command line arguments the program
  845. was invoked with.
  846. Arguments - Supplies a tokenized array of command line arguments.
  847. Return Value:
  848. Returns an integer exit code. 0 for success, nonzero otherwise.
  849. --*/
  850. INT
  851. PsMain (
  852. INT ArgumentCount,
  853. CHAR **Arguments
  854. );
  855. /*++
  856. Routine Description:
  857. This routine is the main entry point for the ps utility.
  858. Arguments:
  859. ArgumentCount - Supplies the number of command line arguments the program
  860. was invoked with.
  861. Arguments - Supplies a tokenized array of command line arguments.
  862. Return Value:
  863. Returns an integer exit code. 0 for success, nonzero otherwise.
  864. --*/
  865. INT
  866. KillMain (
  867. INT ArgumentCount,
  868. CHAR **Arguments
  869. );
  870. /*++
  871. Routine Description:
  872. This routine is the main entry point for the kill utility.
  873. Arguments:
  874. ArgumentCount - Supplies the number of command line arguments the program
  875. was invoked with.
  876. Arguments - Supplies a tokenized array of command line arguments.
  877. Return Value:
  878. Returns an integer exit code. 0 for success, non-zero otherwise.
  879. --*/
  880. INT
  881. CommMain (
  882. INT ArgumentCount,
  883. CHAR **Arguments
  884. );
  885. /*++
  886. Routine Description:
  887. This routine is the main entry point for the comm utility.
  888. Arguments:
  889. ArgumentCount - Supplies the number of command line arguments the program
  890. was invoked with.
  891. Arguments - Supplies a tokenized array of command line arguments.
  892. Return Value:
  893. Returns an integer exit code. 0 for success, nonzero otherwise.
  894. --*/
  895. INT
  896. RebootMain (
  897. INT ArgumentCount,
  898. CHAR **Arguments
  899. );
  900. /*++
  901. Routine Description:
  902. This routine is the main entry point for the reboot utility.
  903. Arguments:
  904. ArgumentCount - Supplies the number of command line arguments the program
  905. was invoked with.
  906. Arguments - Supplies a tokenized array of command line arguments.
  907. Return Value:
  908. Returns an integer exit code. 0 for success, nonzero otherwise.
  909. --*/
  910. INT
  911. IdMain (
  912. INT ArgumentCount,
  913. CHAR **Arguments
  914. );
  915. /*++
  916. Routine Description:
  917. This routine is the main entry point for the id utility.
  918. Arguments:
  919. ArgumentCount - Supplies the number of command line arguments the program
  920. was invoked with.
  921. Arguments - Supplies a tokenized array of command line arguments.
  922. Return Value:
  923. Returns an integer exit code. 0 for success, nonzero otherwise.
  924. --*/
  925. INT
  926. ChrootMain (
  927. INT ArgumentCount,
  928. CHAR **Arguments
  929. );
  930. /*++
  931. Routine Description:
  932. This routine is the main entry point for the chroot utility, which changes
  933. the root directory and runs a command.
  934. Arguments:
  935. ArgumentCount - Supplies the number of command line arguments the program
  936. was invoked with.
  937. Arguments - Supplies a tokenized array of command line arguments.
  938. Return Value:
  939. Returns an integer exit code. 0 for success, nonzero otherwise.
  940. --*/
  941. INT
  942. ChownMain (
  943. INT ArgumentCount,
  944. CHAR **Arguments
  945. );
  946. /*++
  947. Routine Description:
  948. This routine is the main entry point for the chown utility.
  949. Arguments:
  950. ArgumentCount - Supplies the number of command line arguments the program
  951. was invoked with.
  952. Arguments - Supplies a tokenized array of command line arguments.
  953. Return Value:
  954. Returns an integer exit code. 0 for success, nonzero otherwise.
  955. --*/
  956. INT
  957. UseraddMain (
  958. INT ArgumentCount,
  959. CHAR **Arguments
  960. );
  961. /*++
  962. Routine Description:
  963. This routine is the main entry point for the useradd utility.
  964. Arguments:
  965. ArgumentCount - Supplies the number of command line arguments the program
  966. was invoked with.
  967. Arguments - Supplies a tokenized array of command line arguments.
  968. Return Value:
  969. Returns an integer exit code. 0 for success, nonzero otherwise.
  970. --*/
  971. INT
  972. UserdelMain (
  973. INT ArgumentCount,
  974. CHAR **Arguments
  975. );
  976. /*++
  977. Routine Description:
  978. This routine is the main entry point for the userdel utility.
  979. Arguments:
  980. ArgumentCount - Supplies the number of command line arguments the program
  981. was invoked with.
  982. Arguments - Supplies a tokenized array of command line arguments.
  983. Return Value:
  984. Returns an integer exit code. 0 for success, nonzero otherwise.
  985. --*/
  986. INT
  987. GroupaddMain (
  988. INT ArgumentCount,
  989. CHAR **Arguments
  990. );
  991. /*++
  992. Routine Description:
  993. This routine is the main entry point for the groupadd utility.
  994. Arguments:
  995. ArgumentCount - Supplies the number of command line arguments the program
  996. was invoked with.
  997. Arguments - Supplies a tokenized array of command line arguments.
  998. Return Value:
  999. Returns an integer exit code. 0 for success, nonzero otherwise.
  1000. --*/
  1001. INT
  1002. GroupdelMain (
  1003. INT ArgumentCount,
  1004. CHAR **Arguments
  1005. );
  1006. /*++
  1007. Routine Description:
  1008. This routine is the main entry point for the groupdel utility.
  1009. Arguments:
  1010. ArgumentCount - Supplies the number of command line arguments the program
  1011. was invoked with.
  1012. Arguments - Supplies a tokenized array of command line arguments.
  1013. Return Value:
  1014. Returns an integer exit code. 0 for success, nonzero otherwise.
  1015. --*/
  1016. INT
  1017. PasswdMain (
  1018. INT ArgumentCount,
  1019. CHAR **Arguments
  1020. );
  1021. /*++
  1022. Routine Description:
  1023. This routine is the main entry point for the passwd utility.
  1024. Arguments:
  1025. ArgumentCount - Supplies the number of command line arguments the program
  1026. was invoked with.
  1027. Arguments - Supplies a tokenized array of command line arguments.
  1028. Return Value:
  1029. Returns an integer exit code. 0 for success, nonzero otherwise.
  1030. --*/
  1031. INT
  1032. ChpasswdMain (
  1033. INT ArgumentCount,
  1034. CHAR **Arguments
  1035. );
  1036. /*++
  1037. Routine Description:
  1038. This routine is the main entry point for the chpasswd utility, which
  1039. allows passwords to be changed in bulk.
  1040. Arguments:
  1041. ArgumentCount - Supplies the number of command line arguments the program
  1042. was invoked with.
  1043. Arguments - Supplies a tokenized array of command line arguments.
  1044. Return Value:
  1045. Returns an integer exit code. 0 for success, nonzero otherwise.
  1046. --*/
  1047. INT
  1048. VlockMain (
  1049. INT ArgumentCount,
  1050. CHAR **Arguments
  1051. );
  1052. /*++
  1053. Routine Description:
  1054. This routine is the main entry point for the vlock utility.
  1055. Arguments:
  1056. ArgumentCount - Supplies the number of command line arguments the program
  1057. was invoked with.
  1058. Arguments - Supplies a tokenized array of command line arguments.
  1059. Return Value:
  1060. Returns an integer exit code. 0 for success, nonzero otherwise.
  1061. --*/
  1062. INT
  1063. SuMain (
  1064. INT ArgumentCount,
  1065. CHAR **Arguments
  1066. );
  1067. /*++
  1068. Routine Description:
  1069. This routine is the main entry point for the su utility.
  1070. Arguments:
  1071. ArgumentCount - Supplies the number of command line arguments the program
  1072. was invoked with.
  1073. Arguments - Supplies a tokenized array of command line arguments.
  1074. Return Value:
  1075. Returns an integer exit code. 0 for success, nonzero otherwise.
  1076. --*/
  1077. INT
  1078. SuloginMain (
  1079. INT ArgumentCount,
  1080. CHAR **Arguments
  1081. );
  1082. /*++
  1083. Routine Description:
  1084. This routine is the main entry point for the sulogin (single-user login)
  1085. utility.
  1086. Arguments:
  1087. ArgumentCount - Supplies the number of command line arguments the program
  1088. was invoked with.
  1089. Arguments - Supplies a tokenized array of command line arguments.
  1090. Return Value:
  1091. Returns an integer exit code. 0 for success, nonzero otherwise.
  1092. --*/
  1093. INT
  1094. LoginMain (
  1095. INT ArgumentCount,
  1096. CHAR **Arguments
  1097. );
  1098. /*++
  1099. Routine Description:
  1100. This routine is the main entry point for the login utility.
  1101. Arguments:
  1102. ArgumentCount - Supplies the number of command line arguments the program
  1103. was invoked with.
  1104. Arguments - Supplies a tokenized array of command line arguments.
  1105. Return Value:
  1106. Returns an integer exit code. 0 for success, nonzero otherwise.
  1107. --*/
  1108. INT
  1109. GettyMain (
  1110. INT ArgumentCount,
  1111. CHAR **Arguments
  1112. );
  1113. /*++
  1114. Routine Description:
  1115. This routine is the main entry point for the getty utility.
  1116. Arguments:
  1117. ArgumentCount - Supplies the number of command line arguments the program
  1118. was invoked with.
  1119. Arguments - Supplies a tokenized array of command line arguments.
  1120. Return Value:
  1121. Returns an integer exit code. 0 for success, nonzero otherwise.
  1122. --*/
  1123. INT
  1124. InitMain (
  1125. INT ArgumentCount,
  1126. CHAR **Arguments
  1127. );
  1128. /*++
  1129. Routine Description:
  1130. This routine is the main entry point for the init utility.
  1131. Arguments:
  1132. ArgumentCount - Supplies the number of command line arguments the program
  1133. was invoked with.
  1134. Arguments - Supplies a tokenized array of command line arguments.
  1135. Return Value:
  1136. Returns an integer exit code. 0 for success, nonzero otherwise.
  1137. --*/
  1138. INT
  1139. SsDaemonMain (
  1140. INT ArgumentCount,
  1141. CHAR **Arguments
  1142. );
  1143. /*++
  1144. Routine Description:
  1145. This routine is the main entry point for the start-stop-daemon utility.
  1146. Arguments:
  1147. ArgumentCount - Supplies the number of command line arguments the program
  1148. was invoked with.
  1149. Arguments - Supplies a tokenized array of command line arguments.
  1150. Return Value:
  1151. Returns an integer exit code. 0 for success, nonzero otherwise.
  1152. --*/
  1153. INT
  1154. ReadlinkMain (
  1155. INT ArgumentCount,
  1156. CHAR **Arguments
  1157. );
  1158. /*++
  1159. Routine Description:
  1160. This routine is the main entry point for the readlink utility.
  1161. Arguments:
  1162. ArgumentCount - Supplies the number of command line arguments the program
  1163. was invoked with.
  1164. Arguments - Supplies a tokenized array of command line arguments.
  1165. Return Value:
  1166. Returns an integer exit code. 0 for success, nonzero otherwise.
  1167. --*/
  1168. INT
  1169. NlMain (
  1170. INT ArgumentCount,
  1171. CHAR **Arguments
  1172. );
  1173. /*++
  1174. Routine Description:
  1175. This routine is the main entry point for the nl (number lines) utility.
  1176. Arguments:
  1177. ArgumentCount - Supplies the number of command line arguments the program
  1178. was invoked with.
  1179. Arguments - Supplies a tokenized array of command line arguments.
  1180. Return Value:
  1181. Returns an integer exit code. 0 for success, nonzero otherwise.
  1182. --*/
  1183. INT
  1184. TeeMain (
  1185. INT ArgumentCount,
  1186. CHAR **Arguments
  1187. );
  1188. /*++
  1189. Routine Description:
  1190. This routine is the main entry point for the tee program.
  1191. Arguments:
  1192. ArgumentCount - Supplies the number of command line arguments the program
  1193. was invoked with.
  1194. Arguments - Supplies a tokenized array of command line arguments.
  1195. Return Value:
  1196. Returns an integer exit code. 0 for success, nonzero otherwise.
  1197. --*/
  1198. INT
  1199. InstallMain (
  1200. INT ArgumentCount,
  1201. CHAR **Arguments
  1202. );
  1203. /*++
  1204. Routine Description:
  1205. This routine is the main entry point for the install utility.
  1206. Arguments:
  1207. ArgumentCount - Supplies the number of command line arguments the program
  1208. was invoked with.
  1209. Arguments - Supplies a tokenized array of command line arguments.
  1210. Return Value:
  1211. Returns an integer exit code. 0 for success, nonzero otherwise.
  1212. --*/
  1213. INT
  1214. XargsMain (
  1215. INT ArgumentCount,
  1216. CHAR **Arguments
  1217. );
  1218. /*++
  1219. Routine Description:
  1220. This routine is the main entry point for the xargs utility.
  1221. Arguments:
  1222. ArgumentCount - Supplies the number of command line arguments the program
  1223. was invoked with.
  1224. Arguments - Supplies a tokenized array of command line arguments.
  1225. Return Value:
  1226. Returns an integer exit code. 0 for success, nonzero otherwise.
  1227. --*/
  1228. INT
  1229. SumMain (
  1230. INT ArgumentCount,
  1231. CHAR **Arguments
  1232. );
  1233. /*++
  1234. Routine Description:
  1235. This routine is the main entry point for the sum utility.
  1236. Arguments:
  1237. ArgumentCount - Supplies the number of command line arguments the program
  1238. was invoked with.
  1239. Arguments - Supplies a tokenized array of command line arguments.
  1240. Return Value:
  1241. Returns an integer exit code. 0 for success, nonzero otherwise.
  1242. --*/
  1243. INT
  1244. HeadMain (
  1245. INT ArgumentCount,
  1246. CHAR **Arguments
  1247. );
  1248. /*++
  1249. Routine Description:
  1250. This routine is the main entry point for the head utility.
  1251. Arguments:
  1252. ArgumentCount - Supplies the number of command line arguments the program
  1253. was invoked with.
  1254. Arguments - Supplies a tokenized array of command line arguments.
  1255. Return Value:
  1256. Returns an integer exit code. 0 for success, nonzero otherwise.
  1257. --*/
  1258. INT
  1259. DdMain (
  1260. INT ArgumentCount,
  1261. CHAR **Arguments
  1262. );
  1263. /*++
  1264. Routine Description:
  1265. This routine is the main entry point for the head utility.
  1266. Arguments:
  1267. ArgumentCount - Supplies the number of command line arguments the program
  1268. was invoked with.
  1269. Arguments - Supplies a tokenized array of command line arguments.
  1270. Return Value:
  1271. Returns an integer exit code. 0 for success, nonzero otherwise.
  1272. --*/
  1273. INT
  1274. MkfifoMain (
  1275. INT ArgumentCount,
  1276. CHAR **Arguments
  1277. );
  1278. /*++
  1279. Routine Description:
  1280. This routine is the main entry point for the mkfifo utility.
  1281. Arguments:
  1282. ArgumentCount - Supplies the number of command line arguments the program
  1283. was invoked with.
  1284. Arguments - Supplies a tokenized array of command line arguments.
  1285. Return Value:
  1286. Returns an integer exit code. 0 for success, nonzero otherwise.
  1287. --*/
  1288. INT
  1289. DwMain (
  1290. INT ArgumentCount,
  1291. CHAR **Arguments
  1292. );
  1293. /*++
  1294. Routine Description:
  1295. This routine is the main entry point for the dw utility.
  1296. Arguments:
  1297. ArgumentCount - Supplies the number of command line arguments the program
  1298. was invoked with.
  1299. Arguments - Supplies a tokenized array of command line arguments.
  1300. Return Value:
  1301. Returns an integer exit code. 0 for success, nonzero otherwise.
  1302. --*/
  1303. INT
  1304. TelnetdMain (
  1305. INT ArgumentCount,
  1306. CHAR **Arguments
  1307. );
  1308. /*++
  1309. Routine Description:
  1310. This routine is the main entry point for the telnetd daemon.
  1311. Arguments:
  1312. ArgumentCount - Supplies the number of command line arguments the program
  1313. was invoked with.
  1314. Arguments - Supplies a tokenized array of command line arguments.
  1315. Return Value:
  1316. Returns an integer exit code. 0 for success, nonzero otherwise.
  1317. --*/
  1318. INT
  1319. TelnetMain (
  1320. INT ArgumentCount,
  1321. CHAR **Arguments
  1322. );
  1323. /*++
  1324. Routine Description:
  1325. This routine is the main entry point for the telnet utility.
  1326. Arguments:
  1327. ArgumentCount - Supplies the number of command line arguments the program
  1328. was invoked with.
  1329. Arguments - Supplies a tokenized array of command line arguments.
  1330. Return Value:
  1331. Returns an integer exit code. 0 for success, nonzero otherwise.
  1332. --*/
  1333. INT
  1334. NprocMain (
  1335. INT ArgumentCount,
  1336. CHAR **Arguments
  1337. );
  1338. /*++
  1339. Routine Description:
  1340. This routine is the main entry point for the nproc utility.
  1341. Arguments:
  1342. ArgumentCount - Supplies the number of command line arguments the program
  1343. was invoked with.
  1344. Arguments - Supplies a tokenized array of command line arguments.
  1345. Return Value:
  1346. Returns an integer exit code. 0 for success, nonzero otherwise.
  1347. --*/
  1348. INT
  1349. SeqMain (
  1350. INT ArgumentCount,
  1351. CHAR **Arguments
  1352. );
  1353. /*++
  1354. Routine Description:
  1355. This routine is the main entry point for the seq utility.
  1356. Arguments:
  1357. ArgumentCount - Supplies the number of command line arguments the program
  1358. was invoked with.
  1359. Arguments - Supplies a tokenized array of command line arguments.
  1360. Return Value:
  1361. Returns an integer exit code. 0 for success, nonzero otherwise.
  1362. --*/
  1363. INT
  1364. SttyMain (
  1365. INT ArgumentCount,
  1366. CHAR **Arguments
  1367. );
  1368. /*++
  1369. Routine Description:
  1370. This routine is the main entry point for the stty utility.
  1371. Arguments:
  1372. ArgumentCount - Supplies the number of command line arguments the program
  1373. was invoked with.
  1374. Arguments - Supplies a tokenized array of command line arguments.
  1375. Return Value:
  1376. Returns an integer exit code. 0 for success, nonzero otherwise.
  1377. --*/
  1378. INT
  1379. WhichMain (
  1380. INT ArgumentCount,
  1381. CHAR **Arguments
  1382. );
  1383. /*++
  1384. Routine Description:
  1385. This routine is the main entry point for the which utility.
  1386. Arguments:
  1387. ArgumentCount - Supplies the number of command line arguments the program
  1388. was invoked with.
  1389. Arguments - Supplies a tokenized array of command line arguments.
  1390. Return Value:
  1391. Returns an integer exit code. 0 for success, nonzero otherwise.
  1392. --*/