Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mongoose
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
esp
mongoose
Commits
238bf1a2
Commit
238bf1a2
authored
Sep 13, 2016
by
Alexander Alashkin
Committed by
Cesanta Bot
Sep 13, 2016
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix MSVC2015 warnings in mongoose
PUBLISHED_FROM=9e2d5c45d112b9e9493d995b12fe989e93d66d5b
parent
4cbf81da
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
34 additions
and
34 deletions
+34
-34
mongoose.c
mongoose.c
+32
-34
mongoose.h
mongoose.h
+2
-0
No files found.
mongoose.c
View file @
238bf1a2
...
...
@@ -1027,7 +1027,7 @@ size_t mbuf_insert(struct mbuf *a, size_t off, const void *buf, size_t len) {
}
a
->
len
+=
len
;
}
else
{
size_t
new_size
=
(
a
->
len
+
len
)
*
MBUF_SIZE_MULTIPLIER
;
size_t
new_size
=
(
size_t
)((
a
->
len
+
len
)
*
MBUF_SIZE_MULTIPLIER
)
;
if
((
p
=
(
char
*
)
MBUF_REALLOC
(
a
->
buf
,
new_size
))
!=
NULL
)
{
a
->
buf
=
p
;
memmove
(
a
->
buf
+
off
+
len
,
a
->
buf
+
off
,
a
->
len
-
off
);
...
...
@@ -1952,7 +1952,7 @@ MG_INTERNAL struct mg_connection *mg_create_connection_base(
conn
->
sock
=
INVALID_SOCKET
;
conn
->
handler
=
callback
;
conn
->
mgr
=
mgr
;
conn
->
last_io_time
=
mg_time
();
conn
->
last_io_time
=
(
time_t
)
mg_time
();
conn
->
flags
=
opts
.
flags
&
_MG_ALLOWED_CONNECT_FLAGS_MASK
;
conn
->
user_data
=
opts
.
user_data
;
/*
...
...
@@ -2267,7 +2267,7 @@ void mg_if_accept_tcp_cb(struct mg_connection *nc, union socket_address *sa,
}
void
mg_send
(
struct
mg_connection
*
nc
,
const
void
*
buf
,
int
len
)
{
nc
->
last_io_time
=
mg_time
();
nc
->
last_io_time
=
(
time_t
)
mg_time
();
if
(
nc
->
flags
&
MG_F_UDP
)
{
mg_if_udp_send
(
nc
,
buf
,
len
);
}
else
{
...
...
@@ -2298,7 +2298,7 @@ static void mg_recv_common(struct mg_connection *nc, void *buf, int len) {
MG_FREE
(
buf
);
return
;
}
nc
->
last_io_time
=
mg_time
();
nc
->
last_io_time
=
(
time_t
)
mg_time
();
if
(
nc
->
recv_mbuf
.
len
==
0
)
{
/* Adopt buf as recv_mbuf's backing store. */
mbuf_free
(
&
nc
->
recv_mbuf
);
...
...
@@ -3174,7 +3174,7 @@ void mg_mgr_handle_conn(struct mg_connection *nc, int fd_flags, double now) {
}
if
(
!
(
fd_flags
&
(
_MG_F_FD_CAN_READ
|
_MG_F_FD_CAN_WRITE
)))
{
mg_if_poll
(
nc
,
now
);
mg_if_poll
(
nc
,
(
time_t
)
now
);
}
mg_if_timer
(
nc
,
now
);
}
...
...
@@ -3315,7 +3315,7 @@ time_t mg_mgr_poll(struct mg_mgr *mgr, int timeout_ms) {
if
(
num_timers
>
0
)
{
double
timer_timeout_ms
=
(
min_timer
-
mg_time
())
*
1000
+
1
/* rounding */
;
if
(
timer_timeout_ms
<
timeout_ms
)
{
timeout_ms
=
timer_timeout_ms
;
timeout_ms
=
(
int
)
timer_timeout_ms
;
}
}
if
(
timeout_ms
<
0
)
timeout_ms
=
0
;
...
...
@@ -3363,7 +3363,7 @@ time_t mg_mgr_poll(struct mg_mgr *mgr, int timeout_ms) {
}
}
return
now
;
return
(
time_t
)
now
;
}
#ifndef MG_DISABLE_SOCKETPAIR
...
...
@@ -4063,7 +4063,7 @@ static const char *mg_http_parse_headers(const char *s, const char *end,
}
if
(
!
mg_ncasecmp
(
k
->
p
,
"Content-Length"
,
14
))
{
req
->
body
.
len
=
to64
(
v
->
p
);
req
->
body
.
len
=
(
size_t
)
to64
(
v
->
p
);
req
->
message
.
len
=
len
+
req
->
body
.
len
;
}
}
...
...
@@ -4292,7 +4292,7 @@ static void mg_send_ws_header(struct mg_connection *nc, int op, size_t len,
header
[
0
]
=
(
op
&
WEBSOCKET_DONT_FIN
?
0x0
:
0x80
)
+
(
op
&
0x0f
);
if
(
len
<
126
)
{
header
[
1
]
=
len
;
header
[
1
]
=
(
unsigned
char
)
len
;
header_len
=
2
;
}
else
if
(
len
<
65535
)
{
uint16_t
tmp
=
htons
((
uint16_t
)
len
);
...
...
@@ -4448,8 +4448,7 @@ static void mg_ws_handshake(struct mg_connection *nc,
static
void
mg_http_transfer_file_data
(
struct
mg_connection
*
nc
)
{
struct
mg_http_proto_data
*
pd
=
mg_http_get_proto_data
(
nc
);
char
buf
[
MG_MAX_HTTP_SEND_MBUF
];
int64_t
left
=
pd
->
file
.
cl
-
pd
->
file
.
sent
;
size_t
n
=
0
,
to_read
=
0
;
size_t
n
=
0
,
to_read
=
0
,
left
=
(
size_t
)(
pd
->
file
.
cl
-
pd
->
file
.
sent
);
if
(
pd
->
file
.
type
==
DATA_FILE
)
{
struct
mbuf
*
io
=
&
nc
->
send_mbuf
;
...
...
@@ -4457,7 +4456,7 @@ static void mg_http_transfer_file_data(struct mg_connection *nc) {
to_read
=
sizeof
(
buf
)
-
io
->
len
;
}
if
(
left
>
0
&&
to_read
>
(
size_t
)
left
)
{
if
(
left
>
0
&&
to_read
>
left
)
{
to_read
=
left
;
}
...
...
@@ -4473,8 +4472,7 @@ static void mg_http_transfer_file_data(struct mg_connection *nc) {
}
}
else
if
(
pd
->
file
.
type
==
DATA_PUT
)
{
struct
mbuf
*
io
=
&
nc
->
recv_mbuf
;
size_t
to_write
=
left
<=
0
?
0
:
left
<
(
int64_t
)
io
->
len
?
(
size_t
)
left
:
io
->
len
;
size_t
to_write
=
left
<=
0
?
0
:
left
<
io
->
len
?
(
size_t
)
left
:
io
->
len
;
size_t
n
=
fwrite
(
io
->
buf
,
1
,
to_write
,
pd
->
file
.
fp
);
if
(
n
>
0
)
{
mbuf_remove
(
io
,
n
);
...
...
@@ -4542,9 +4540,8 @@ MG_INTERNAL size_t mg_handle_chunked(struct mg_connection *nc,
struct
mg_http_proto_data
*
pd
=
mg_http_get_proto_data
(
nc
);
char
*
data
;
size_t
i
,
n
,
data_len
,
body_len
,
zero_chunk_received
=
0
;
/* Find out piece of received data that is not yet reassembled */
body_len
=
pd
->
chunk
.
body_len
;
body_len
=
(
size_t
)
pd
->
chunk
.
body_len
;
assert
(
blen
>=
body_len
);
/* Traverse all fully buffered chunks */
...
...
@@ -4580,11 +4577,12 @@ MG_INTERNAL size_t mg_handle_chunked(struct mg_connection *nc,
memset
(
buf
,
0
,
body_len
);
memmove
(
buf
,
buf
+
body_len
,
blen
-
i
);
nc
->
recv_mbuf
.
len
-=
body_len
;
hm
->
body
.
len
=
pd
->
chunk
.
body_len
=
0
;
hm
->
body
.
len
=
0
;
pd
->
chunk
.
body_len
=
0
;
}
if
(
zero_chunk_received
)
{
hm
->
message
.
len
=
pd
->
chunk
.
body_len
+
blen
-
i
;
hm
->
message
.
len
=
(
size_t
)
pd
->
chunk
.
body_len
+
blen
-
i
;
}
}
...
...
@@ -5596,7 +5594,7 @@ void mg_http_serve_file(struct mg_connection *nc, struct http_message *hm,
_XOPEN_SOURCE >= 600
fseeko
(
pd
->
file
.
fp
,
r1
,
SEEK_SET
);
#else
fseek
(
pd
->
file
.
fp
,
r1
,
SEEK_SET
);
fseek
(
pd
->
file
.
fp
,
(
long
)
r1
,
SEEK_SET
);
#endif
}
}
...
...
@@ -7981,15 +7979,15 @@ void mg_send_mqtt_handshake_opt(struct mg_connection *nc, const char *client_id,
* keep-alive timer,
* 2: client_identifier_len, n: client_id
*/
rem_len
=
9
+
1
+
2
+
2
+
strlen
(
client_id
);
rem_len
=
9
+
1
+
2
+
2
+
(
uint8_t
)
strlen
(
client_id
);
if
(
opts
.
user_name
!=
NULL
)
{
opts
.
flags
|=
MG_MQTT_HAS_USER_NAME
;
rem_len
+=
strlen
(
opts
.
user_name
)
+
2
;
rem_len
+=
(
uint8_t
)
strlen
(
opts
.
user_name
)
+
2
;
}
if
(
opts
.
password
!=
NULL
)
{
opts
.
flags
|=
MG_MQTT_HAS_PASSWORD
;
rem_len
+=
strlen
(
opts
.
password
)
+
2
;
rem_len
+=
(
uint8_t
)
strlen
(
opts
.
password
)
+
2
;
}
mg_send
(
nc
,
&
header
,
1
);
...
...
@@ -8003,17 +8001,17 @@ void mg_send_mqtt_handshake_opt(struct mg_connection *nc, const char *client_id,
keep_alive
=
htons
(
opts
.
keep_alive
);
mg_send
(
nc
,
&
keep_alive
,
2
);
len
=
htons
(
strlen
(
client_id
));
len
=
htons
(
(
uint16_t
)
strlen
(
client_id
));
mg_send
(
nc
,
&
len
,
2
);
mg_send
(
nc
,
client_id
,
strlen
(
client_id
));
if
(
opts
.
flags
&
MG_MQTT_HAS_USER_NAME
)
{
len
=
htons
(
strlen
(
opts
.
user_name
));
len
=
htons
(
(
uint16_t
)
strlen
(
opts
.
user_name
));
mg_send
(
nc
,
&
len
,
2
);
mg_send
(
nc
,
opts
.
user_name
,
strlen
(
opts
.
user_name
));
}
if
(
opts
.
flags
&
MG_MQTT_HAS_PASSWORD
)
{
len
=
htons
(
strlen
(
opts
.
password
));
len
=
htons
(
(
uint16_t
)
strlen
(
opts
.
password
));
mg_send
(
nc
,
&
len
,
2
);
mg_send
(
nc
,
opts
.
password
,
strlen
(
opts
.
password
));
}
...
...
@@ -8047,7 +8045,7 @@ void mg_mqtt_publish(struct mg_connection *nc, const char *topic,
size_t
len
)
{
size_t
old_len
=
nc
->
send_mbuf
.
len
;
uint16_t
topic_len
=
htons
(
strlen
(
topic
));
uint16_t
topic_len
=
htons
(
(
uint16_t
)
strlen
(
topic
));
uint16_t
message_id_net
=
htons
(
message_id
);
mg_send
(
nc
,
&
topic_len
,
2
);
...
...
@@ -8071,7 +8069,7 @@ void mg_mqtt_subscribe(struct mg_connection *nc,
mg_send
(
nc
,
(
char
*
)
&
message_id_n
,
2
);
for
(
i
=
0
;
i
<
topics_len
;
i
++
)
{
uint16_t
topic_len_n
=
htons
(
strlen
(
topics
[
i
].
topic
));
uint16_t
topic_len_n
=
htons
(
(
uint16_t
)
strlen
(
topics
[
i
].
topic
));
mg_send
(
nc
,
&
topic_len_n
,
2
);
mg_send
(
nc
,
topics
[
i
].
topic
,
strlen
(
topics
[
i
].
topic
));
mg_send
(
nc
,
&
topics
[
i
].
qos
,
1
);
...
...
@@ -8103,7 +8101,7 @@ void mg_mqtt_unsubscribe(struct mg_connection *nc, char **topics,
mg_send
(
nc
,
(
char
*
)
&
message_id_n
,
2
);
for
(
i
=
0
;
i
<
topics_len
;
i
++
)
{
uint16_t
topic_len_n
=
htons
(
strlen
(
topics
[
i
]));
uint16_t
topic_len_n
=
htons
(
(
uint16_t
)
strlen
(
topics
[
i
]));
mg_send
(
nc
,
&
topic_len_n
,
2
);
mg_send
(
nc
,
topics
[
i
],
strlen
(
topics
[
i
]));
}
...
...
@@ -8503,7 +8501,7 @@ int mg_dns_encode_record(struct mbuf *io, struct mg_dns_resource_record *rr,
io
->
buf
[
off
]
=
u16
>>
8
;
io
->
buf
[
off
+
1
]
=
u16
&
0xff
;
}
else
{
u16
=
htons
(
rlen
);
u16
=
htons
(
(
uint16_t
)
rlen
);
mbuf_append
(
io
,
&
u16
,
2
);
mbuf_append
(
io
,
rdata
,
rlen
);
}
...
...
@@ -8540,7 +8538,7 @@ void mg_send_dns_query(struct mg_connection *nc, const char *name,
/* TCP DNS requires messages to be prefixed with len */
if
(
!
(
nc
->
flags
&
MG_F_UDP
))
{
uint16_t
len
=
htons
(
pkt
.
len
);
uint16_t
len
=
htons
(
(
uint16_t
)
pkt
.
len
);
mbuf_insert
(
&
pkt
,
0
,
&
len
,
2
);
}
...
...
@@ -8702,7 +8700,7 @@ static void dns_handler(struct mg_connection *nc, int ev, void *ev_data) {
msg
.
flags
=
0x8081
;
mg_dns_insert_header
(
io
,
0
,
&
msg
);
if
(
!
(
nc
->
flags
&
MG_F_UDP
))
{
uint16_t
len
=
htons
(
io
->
len
);
uint16_t
len
=
htons
(
(
uint16_t
)
io
->
len
);
mbuf_insert
(
io
,
0
,
&
len
,
2
);
}
mg_send
(
nc
,
io
->
buf
,
io
->
len
);
...
...
@@ -8752,7 +8750,7 @@ void mg_dns_send_reply(struct mg_connection *nc, struct mg_dns_reply *r) {
size_t
sent
=
r
->
io
->
len
-
r
->
start
;
mg_dns_insert_header
(
r
->
io
,
r
->
start
,
r
->
msg
);
if
(
!
(
nc
->
flags
&
MG_F_UDP
))
{
uint16_t
len
=
htons
(
sent
);
uint16_t
len
=
htons
(
(
uint16_t
)
sent
);
mbuf_insert
(
r
->
io
,
r
->
start
,
&
len
,
2
);
}
...
...
@@ -9445,7 +9443,7 @@ static char *coap_add_uint16(char *ptr, uint16_t val) {
*/
static
char
*
coap_add_opt_info
(
char
*
ptr
,
uint16_t
val
,
size_t
len
)
{
if
(
len
==
sizeof
(
uint8_t
))
{
*
ptr
=
val
;
*
ptr
=
(
char
)
val
;
ptr
++
;
}
else
if
(
len
==
sizeof
(
uint16_t
))
{
ptr
=
coap_add_uint16
(
ptr
,
val
);
...
...
@@ -9529,7 +9527,7 @@ uint32_t mg_coap_compose(struct mg_coap_message *cm, struct mbuf *io) {
*/
/* ver: 2 bits, msg_type: 2 bits, toklen: 4 bits */
*
ptr
=
(
1
<<
6
)
|
(
cm
->
msg_type
<<
4
)
|
(
cm
->
token
.
len
);
*
ptr
=
(
1
<<
6
)
|
(
cm
->
msg_type
<<
4
)
|
(
uint8_t
)(
cm
->
token
.
len
);
ptr
++
;
/* code class: 3 bits, code detail: 5 bits */
...
...
mongoose.h
View file @
238bf1a2
...
...
@@ -139,6 +139,8 @@
#pragma warning(disable : 4204)
/* missing c99 support */
#endif
#define _WINSOCK_DEPRECATED_NO_WARNINGS 1
#include <assert.h>
#include <direct.h>
#include <errno.h>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment