-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathprog5srv.h
143 lines (113 loc) · 2.16 KB
/
prog5srv.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
/********************************************************************
prog5srv.h
Class: CSCI 631 Network Applications Programming
Program: Assignment 5
Author: Vishrant K Gupta
Z-number: z1815637
Date Due: 04/28/17
Purpose: FTP
Execution: Make execute N=5 T=2
*********************************************************************/
#ifndef PROG5_H
#define PROG5_H
#include "wrap5srv.h"
//#define MAXLINE 1024
#define CMD 0
// arg 1 index
#define ARG1 1
// agr 2 index
#define ARG2 2
// space
#define SPACE " "
// pwd output
#define PWD_OUTPUT "%d:\"%s\" is current directory.\n"
// cd output
#define CD_OUTPUT "%d:CWD command successful.\n"
// error output
#define ERROR_OUTPUT "%d:\n"
// cdup command
#define CDUP_COMMAND ".."
// zero message
#define ZERO '0'
// blank
#define BLANK ""
/*
* Name: str_echo
*
* Prototype:
* void str_echo(int sockfd, char* command)
*
* Description:
* send to server
*
* Header files:
* prog5cli.h
*/
void str_echo(int);
/*
* Name: get_args
*
* Prototype:
* cmd_id get_args(char* buf, char* cmd, char* arg1, char* arg2)
*
* Description:
* get args
*
* Header files:
* prog5srv.h.c
*
*/
cmd_id get_args(char *, char *, char *, char *);
/*
* Name: find_id
*
* Prototype:
* cmd_id find_id(char* cmd)
*
* Description:
* get command id
*
* Header files:
* prog5srv.h.c
*
*/
cmd_id find_id(char *);
/*
* Name: new_dir
*
* Prototype:
* bool new_dir(char* dir, cmd_id id, int socket_fd)
*
* Description:
* handle cd , lcd cdup command
*
* Header files:
* prog5srv.h.c
*
*/
bool new_dir(char *);
// socket address struct
#define SA struct sockaddr
// default port
#define DEFAULT_PORT 9880
// number of connections
#define LISTENQ 15
// user home
#define USER_HOME "~"
// backslash zero
#define BACKSLASH_ZERO '\0'
// backslash n
#define BACKSLASH_N '\n'
/*
* Name: signal_handler
*
* Prototype:
* void signal_handler(int signo)
*
* Description:
* handles the signal from kernel
*
*/
void signal_handler(int signal_number);
//#define LISTENQ 15
#endif