ReactOS  0.4.14-dev-552-g2fad488
echo.c
Go to the documentation of this file.
1 /*
2  * ECHO.C - internal echo commands.
3  *
4  *
5  * History:
6  *
7  * 16 Jul 1998 (Hans B Pufal)
8  * Started.
9  *
10  * 16 Jul 1998 (John P Price)
11  * Separated commands into individual files.
12  *
13  * 27-Jul-1998 (John P Price <linux-guru@gcfl.net>)
14  * Added config.h include
15  *
16  * 08-Dec-1998 (Eric Kohl)
17  * Added help text ("/?").
18  *
19  * 19-Jan-1999 (Eric Kohl)
20  * Unicode and redirection ready!
21  *
22  * 13-Jul-2000 (Eric Kohl)
23  * Implemented 'echo.' and 'echoerr.'.
24  *
25  * 28-Apr-2005 (Magnus Olsen <magnus@greatlord.com>)
26  * Remove all hardcoded strings in En.rc
27  */
28 
29 #include "precomp.h"
30 
31 BOOL
33 {
34  TCHAR *p2;
35  if (_tcsnicmp(param, D_OFF, sizeof(D_OFF)/sizeof(TCHAR) - 1) == 0)
36  {
37  p2 = param + sizeof(D_OFF)/sizeof(TCHAR) - 1;
38  while (_istspace(*p2))
39  p2++;
40  if (*p2 == _T('\0'))
41  {
42  *flag = FALSE;
43  return TRUE;
44  }
45  }
46  else if (_tcsnicmp(param, D_ON, sizeof(D_ON)/sizeof(TCHAR) - 1) == 0)
47  {
48  p2 = param + sizeof(D_ON)/sizeof(TCHAR) - 1;
49  while (_istspace(*p2))
50  p2++;
51  if (*p2 == _T('\0'))
52  {
53  *flag = TRUE;
54  return TRUE;
55  }
56  }
57  else if (*param == _T('\0'))
58  {
60  return TRUE;
61  }
62  return FALSE;
63 }
64 
66 {
67  LPTSTR p1;
68 
69  TRACE ("CommandEcho: '%s'\n", debugstr_aw(param));
70 
71  /* skip all spaces for the check of '/?', 'ON' and 'OFF' */
72  p1 = param;
73  while(_istspace(*p1))
74  p1++;
75 
76  if (!_tcsncmp (p1, _T("/?"), 2))
77  {
79  return 0;
80  }
81 
83  {
84  /* skip the first character */
85  ConOutPuts(param + 1);
86  ConOutChar(_T('\n'));
87  }
88  return 0;
89 }
90 
92 {
93  TRACE ("CommandEchos: '%s'\n", debugstr_aw(param));
94 
95  if (!_tcsncmp (param, _T("/?"), 2))
96  {
98  return 0;
99  }
100 
101  ConOutPrintf (_T("%s"), param);
102  return 0;
103 }
104 
105 
107 {
108  TRACE ("CommandEchoerr: '%s'\n", debugstr_aw(param));
109 
110  if (!_tcsncmp (param, _T("/?"), 2))
111  {
113  return 0;
114  }
115 
116  ConErrPuts (param);
117  return 0;
118 }
119 
120 
122 {
123  TRACE ("CommandEchoserr: '%s'\n", debugstr_aw(param));
124 
125  if (!_tcsncmp (param, _T("/?"), 2))
126  {
128  return 0;
129  }
130 
131  ConErrPrintf (_T("%s"), param);
132  return 0;
133 }
134 
135 /* EOF */
#define STRING_ECHO_HELP2
Definition: resource.h:121
Definition: tftpd.h:59
#define TRUE
Definition: types.h:120
VOID ConOutChar(TCHAR c)
Definition: console.c:123
#define STRING_ECHO_HELP3
Definition: resource.h:122
#define debugstr_aw
Definition: precomp.h:43
BOOL bEcho
Definition: batch.c:68
#define ConOutPrintf(szStr,...)
Definition: console.h:42
VOID ConOutResPaging(BOOL StartPaging, UINT resID)
Definition: console.c:182
int32_t INT
Definition: typedefs.h:56
CHAR * LPTSTR
Definition: xmlstorage.h:192
unsigned int BOOL
Definition: ntddk_ex.h:94
INT CommandEcho(LPTSTR param)
Definition: echo.c:65
#define _tcsnicmp
Definition: xmlstorage.h:207
#define STRING_ECHO_HELP5
Definition: resource.h:124
VOID ConErrPrintf(LPTSTR szFormat,...)
Definition: tee.c:36
#define STRING_ECHO_HELP4
Definition: resource.h:123
#define D_OFF
Definition: cmd.h:38
char TCHAR
Definition: xmlstorage.h:189
#define _T(x)
Definition: vfdio.h:22
#define TRACE(s)
Definition: solgame.cpp:4
INT CommandEchos(LPTSTR param)
Definition: echo.c:91
GLfloat param
Definition: glext.h:5796
VOID ConErrPuts(LPTSTR szText)
Definition: tee.c:59
#define D_ON
Definition: cmd.h:37
#define ConOutResPrintf(uID,...)
Definition: console.h:48
INT CommandEchoserr(LPTSTR param)
Definition: echo.c:121
INT CommandEchoerr(LPTSTR param)
Definition: echo.c:106
BOOL OnOffCommand(LPTSTR param, LPBOOL flag, INT message)
Definition: echo.c:32
#define STRING_ECHO_HELP1
Definition: resource.h:120
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean flag
Definition: glfuncs.h:52
BOOL * LPBOOL
Definition: windef.h:162
#define ConOutResPuts(uID)
Definition: console.h:36
#define _istspace
Definition: tchar.h:1504
int _tcsncmp(const _TCHAR *s1, const _TCHAR *s2, size_t n)
Definition: tcsncmp.h:9
VOID ConOutPuts(LPTSTR szText)
Definition: tee.c:27