blob: 95e0b020adf1e3082c40f550319b2e20cab1c72a [file] [log] [blame]
Zhigangb9bd0222018-07-20 17:56:38 +08001#include <stdio.h>
2#include <stdlib.h>
3
4#include "bootloader_message.h"
5
6void usage() {
7 printf("eg:urlmisc write http://xx.28.xx.53:8080/otaupdate/swupdate/software.swu\n");
8 printf(" urlmisc read\n");
9 printf(" urlmisc clean\n");
kirk.wang31f70c92021-12-20 19:19:14 +080010 printf(" urlmisc local\n");
feijiang.lib67e3092024-08-15 06:09:02 +000011 printf(" urlmisc setstatus\n");
12 printf(" urlmisc clearstatus\n");
13 printf(" urlmisc readstatus\n");
14 printf(" urlmisc readrecovery\n");
Zhigangb9bd0222018-07-20 17:56:38 +080015}
16
17int main(int argc, char **argv) {
18
19 int ret = 0;
20 char path_buf[256] = {0};
21 if ((argc != 2) && (argc != 3)) {
22 usage();
23 return -1;
24 }
25
26 mtd_scan_partitions();
27
28 if (argc == 3) {
29 if (!strcmp(argv[1], "write")) {
30 ret = set_recovery_otapath(argv[2]);
31 if (ret != 0) {
32 printf("set otapath : %s failed!\n", argv[1]);
33 return -1;
34 }
35 } else {
36 usage();
37 return -1;
38 }
39 } else {
40 if (!strcmp(argv[1], "read")) {
41 ret = get_recovery_otapath(path_buf);
42 if (ret != 0) {
43 printf("get otapath failed!\n");
44 return -1;
45 }
46 } else if (!strcmp(argv[1], "clean")) {
47 ret = clean_recovery_otapath();
48 if (ret != 0) {
49 printf("clean otapath failed!\n");
50 return -1;
kirk.wang31f70c92021-12-20 19:19:14 +080051 }
52 } else if (!strcmp(argv[1], "local")) {
53 ret = set_recovery();
54 if (ret != 0) {
55 printf("set local failed!\n");
56 return -1;
Zhigangb9bd0222018-07-20 17:56:38 +080057 }
feijiang.lib67e3092024-08-15 06:09:02 +000058 } else if (!strcmp(argv[1], "setstatus")) {
59 ret = set_status();
60 if (ret != 0) {
61 printf("set status failed!\n");
62 return -1;
63 }
64 } else if (!strcmp(argv[1], "clearstatus")) {
65 ret = clear_status();
66 if (ret != 0) {
67 printf("clean status failed!\n");
68 return -1;
69 }
70 } else if (!strcmp(argv[1], "readstatus")) {
71 ret = read_status();
72 if (ret == -1) {
73 printf("read status failed!\n");
74 return -1;
75 }
76 return ret;
77 } else if (!strcmp(argv[1], "readrecovery")) {
78 ret = read_recovery();
79 if (ret == -1) {
80 printf("read status failed!\n");
81 return -1;
82 }
83 return ret;
Zhigangb9bd0222018-07-20 17:56:38 +080084 } else {
85 usage();
86 return -1;
87 }
88 }
89
90 return 0;
91}