blob: 27050c66539d161e73f8849fd67e0b42fad1ec13 [file] [log] [blame]
hong.liud2417072025-06-27 07:10:37 -07001#include <stdio.h>
2#include <stdlib.h>
3#include <sys/types.h>
4#include <unistd.h>
5#include <fcntl.h>
6#include <string.h>
hj.shaofe9d0022025-06-11 20:22:48 -07007#include "gsw_sys_interface.h"
8
hj.shao0bbdedc2025-06-20 04:18:11 -07009#define LOG_LEVLE_CONFIG_FILE "/etc/telinit"
10
hj.shaofe9d0022025-06-11 20:22:48 -070011int gsw_sys_svr_ftp_start(const char *cfg)
12{
13 int ret = GSW_HAL_SUCCESS;
hj.shao0bbdedc2025-06-20 04:18:11 -070014 char command[128] = "vsftpd &";
15 if(NULL == cfg)
16 {
17 ret = system(command);
18 }
19 else
20 {
21 sprintf(command, "vsftpd %s &", cfg);
22 ret = system(command);
23 }
24
25 if(ret != 0) {
26 printf("command execution failed command:%s.\n", command);
hj.shaofe9d0022025-06-11 20:22:48 -070027 return GSW_HAL_NORMAL_FAIL;
hj.shao0bbdedc2025-06-20 04:18:11 -070028 }
hj.shaofe9d0022025-06-11 20:22:48 -070029
30 return GSW_HAL_SUCCESS;
31}
32
33int gsw_sys_svr_ftp_stop()
34{
35 int ret = GSW_HAL_SUCCESS;
hj.shao0bbdedc2025-06-20 04:18:11 -070036 char command[] = "killall -TERM vsftpd";
37
38 ret = system(command);
39 if(ret != 0)
40 {
41 printf("command execution failed command:%s.\n", command);
42 return GSW_HAL_NORMAL_FAIL;
43 }
44
45 return GSW_HAL_SUCCESS;
46
hj.shaofe9d0022025-06-11 20:22:48 -070047}
48
49int gsw_sys_svr_ssh_start(const char *cfg)
50{
51 int ret= GSW_HAL_SUCCESS;
hj.shaoc85a46f2025-06-23 23:59:51 -070052 char command[128] = "/usr/sbin/sshd &";
hj.shao0bbdedc2025-06-20 04:18:11 -070053
54 if(NULL == cfg)
55 {
56 ret = system(command);
57 }
58 else
59 {
hj.shaoc85a46f2025-06-23 23:59:51 -070060 sprintf(command, "/usr/sbin/sshd %s &", cfg);
hj.shao0bbdedc2025-06-20 04:18:11 -070061 ret = system(command);
62 }
63
hj.shaofe9d0022025-06-11 20:22:48 -070064 if(ret != 0)
hj.shao0bbdedc2025-06-20 04:18:11 -070065 {
66 printf("command execution failed command:%s.\n", command);
hj.shaofe9d0022025-06-11 20:22:48 -070067 return GSW_HAL_NORMAL_FAIL;
hj.shao0bbdedc2025-06-20 04:18:11 -070068
69 }
hj.shaofe9d0022025-06-11 20:22:48 -070070 return GSW_HAL_SUCCESS;
71}
72
73int gsw_sys_svr_ssh_stop()
74{
75 int ret = GSW_HAL_SUCCESS;
hj.shaoc85a46f2025-06-23 23:59:51 -070076 char command[] = "killall sshd";
hj.shao0bbdedc2025-06-20 04:18:11 -070077
78 ret = system(command);
hj.shaofe9d0022025-06-11 20:22:48 -070079 if(ret != 0)
hj.shao0bbdedc2025-06-20 04:18:11 -070080 {
81 printf("command execution failed command:%s.\n", command);
hj.shaofe9d0022025-06-11 20:22:48 -070082 return GSW_HAL_NORMAL_FAIL;
hj.shao0bbdedc2025-06-20 04:18:11 -070083 }
hj.shaofe9d0022025-06-11 20:22:48 -070084
85 return GSW_HAL_SUCCESS;
86}
87
88int gsw_sys_svr_syslog_restart(const char *log_lvl)
89{
90 (void)log_lvl;
hj.shao0bbdedc2025-06-20 04:18:11 -070091 char command[256] = {0};
hj.shaoc85a46f2025-06-23 23:59:51 -070092 int level = 0;
93 char *log_level_params[8] = {"emerg", "alert", "crit", "err", "warning", "notice", "info", "debug"};
94 char *log_level_values[8] = {"1", "2", "3", "4", "5", "6", "7", "8"};
hj.shao0bbdedc2025-06-20 04:18:11 -070095
96 snprintf(command, sizeof(command),
97 "grep -q 'setprop sys.default.loglevel' %s", LOG_LEVLE_CONFIG_FILE);
98
hj.shaoc85a46f2025-06-23 23:59:51 -070099 for(level = 0; level < 8; level++)
100 {
101 if(0 == strcmp(log_lvl, log_level_params[level]))
102 break;
103 }
104
105 if(8 == level)
106 {
107 printf("Parameter error\n");
108 return -1;
109 }
110
hj.shao0bbdedc2025-06-20 04:18:11 -0700111 int exists = system(command);
112 if (exists != 0) {
113 printf("config option not exist.\n");
114 return GSW_HAL_NORMAL_FAIL;
115 }
116
hj.shaoc85a46f2025-06-23 23:59:51 -0700117 snprintf(command, sizeof(command),
118 "sed -i 's/\\(setprop sys.default.loglevel \\)\\S*/\\1%s/' %s",
119 log_level_values[level], LOG_LEVLE_CONFIG_FILE);
120
121 int result = system(command);
122 if (result != 0) {
123 printf("command execution failed.\n");
124 return GSW_HAL_SUCCESS;
hj.shao0bbdedc2025-06-20 04:18:11 -0700125 }
126
hj.shaoc85a46f2025-06-23 23:59:51 -0700127
hj.shaofe9d0022025-06-11 20:22:48 -0700128 return GSW_HAL_NORMAL_FAIL;
129}