more helper functions added to nxinstall
[public/netxms.git] / src / nxinstall / system.cpp
CommitLineData
c5f180e6
VK
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 */
31int 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 */
45int 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}