Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F967889
shutdown_interrupts_recvfrom.c
sobomax (Maksym Sobolyev)
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Authored By
sobomax
Apr 10 2017, 5:57 PM
2017-04-10 17:57:57 (UTC+0)
Size
1 KB
Referenced Files
None
Subscribers
None
shutdown_interrupts_recvfrom.c
View Options
#include
<stdio.h>
#include
<unistd.h>
#include
<sys/types.h>
#include
<sys/socket.h>
#include
<netinet/in.h>
#include
<strings.h>
#include
<pthread.h>
void
*
mythread
(
void
*
arg
)
{
int
*
s
=
arg
;
int
res
;
sleep
(
2
);
res
=
shutdown
(
*
s
,
SHUT_RDWR
);
if
(
res
!=
0
)
{
perror
(
"shutdown"
);
}
return
NULL
;
}
int
main
(
int
argc
,
char
*
argv
[])
{
int
s
;
socklen_t
addrlen
;
struct
sockaddr_in
addr
;
char
buf
[
16384
];
pthread_t
thr
;
s
=
socket
(
AF_INET
,
SOCK_DGRAM
,
0
);
if
(
s
<
0
)
{
perror
(
"socket"
);
return
1
;
}
bzero
(
&
addr
,
sizeof
(
addr
));
addr
.
sin_family
=
AF_INET
;
addr
.
sin_addr
.
s_addr
=
htonl
(
INADDR_ANY
);
addr
.
sin_port
=
htons
(
5555
);
addrlen
=
sizeof
(
addr
);
if
(
bind
(
s
,
(
struct
sockaddr
*
)
&
addr
,
sizeof
(
addr
))
<
0
)
{
perror
(
"bind"
);
return
1
;
}
if
(
pthread_create
(
&
thr
,
NULL
,
mythread
,
&
s
)
!=
0
)
{
perror
(
"pthread_create"
);
return
1
;
}
recvfrom
(
s
,
buf
,
sizeof
(
buf
),
0
,
(
struct
sockaddr
*
)
&
addr
,
&
addrlen
);
printf
(
"Success
\n
"
);
}
File Metadata
Details
Attached
Mime Type
text/x-c
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
821227
Default Alt Text
shutdown_interrupts_recvfrom.c (1 KB)
Attached To
Mode
D10351: Restore ability to shutdown datagram sockets
Attached
Detach File
Event Timeline
Log In to Comment