more helper functions added to nxinstall
[public/netxms.git] / src / nxinstall / system.cpp
1 /*
2 ** NetXMS - Network Management System
3 ** NXSL-based installer tool collection
4 ** Copyright (C) 2005-2011 Victor Kirhenshtein
5 **
6 ** This program is free software; you can redistribute it and/or modify
7 ** it under the terms of the GNU General Public License as published by
8 ** the Free Software Foundation; either version 2 of the License, or
9 ** (at your option) any later version.
10 **
11 ** This program is distributed in the hope that it will be useful,
12 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ** GNU General Public License for more details.
15 **
16 ** You should have received a copy of the GNU General Public License
17 ** along with this program; if not, write to the Free Software
18 ** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 **
20 ** File: system.cpp
21 **
22 **/
23
24 #include "nxinstall.h"
25
26 /**
27 * Change current directory
28 * Parameters:
29 * 1) path
30 */
31 int F_chdir(int argc, NXSL_Value **argv, NXSL_Value **ppResult, NXSL_Program *program)
32 {
33 if (!argv[0]->isString())
34 return NXSL_ERR_NOT_STRING;
35
36 *ppResult = new NXSL_Value((LONG)_tchdir(argv[0]->getValueAsCString()));
37 return 0;
38 }
39
40 /**
41 * Execute command in a shell.
42 * Parameters:
43 * 1) command
44 */
45 int F_system(int argc, NXSL_Value **argv, NXSL_Value **ppResult, NXSL_Program *program)
46 {
47 if (!argv[0]->isString())
48 return NXSL_ERR_NOT_STRING;
49
50 *ppResult = new NXSL_Value((LONG)_tsystem(argv[0]->getValueAsCString()));
51 return 0;
52 }