Debugging Question:

What is the output of this program no 12?
#include<stdio.h>

int main()
{
int fd_socket;
fd_socket = socket(AF_UNIX,SOCK_STREAM,0);
printf("%dn",fd_socket);
return 0;
}
a) -1
b) 0
c) any integer value
d) none of the mentioned

Tweet Share WhatsApp

Answer:

d) none of the mentioned
Explanation:
To use socket(), the header files sys/types.h and sys/socket.h are required.
Output:
[root@localhost google]# gcc -o san san.c
san.c: In function 'main':
san.c:6:21: error: 'AF_UNIX' undeclared (first use in this function)
san.c:6:21: note: each undeclared identifier is reported only once for each function it appears in
san.c:6:29: error: 'SOCK_STREAM' undeclared (first use in this function)
[root@localhost google]#

Download Linux Debugging PDF Read All 80 Linux Debugging Questions
Previous QuestionNext Question
What is the the response of this server for this client if both programs are running on the same system?

/*This is server.c*/
#include<stdio.h>
#include<stdlib.h>
#include<netinet/in.h>
#include<sys/types.h>
#include<sys/socket.h>

int main()
{
int fd_server, fd_client, len, len_client;
struct sockaddr_in add_server, add_client;
char buff[10];
fd_server = socket(AF_INET,SOCK_STREAM,0);
if (fd_server == -1){
perror("fd_sock");
exit(1);
}
add_server.sin_family = AF_INET;
add_server.sin_port = htons(4001);
add_server.sin_addr.s_addr = inet_addr("127.0.0.1");
len = sizeof(add_server);
len = sizeof(add_client);
if( bind(fd_server,(struct sockaddr*)&add_server,len) != 0)
perror("bind");
if(listen(fd_server,5) != 0)
perror("listen");
fd_client = accept(fd_server,(struct sockaddr*)&add_client,&len_client);
if(fd_client == -1)
perror("accept");
read(fd_client,buff,10);
return 0;
}
/*This is the client.c*/
#include<stdio.h>
#include<netinet/in.h>
#include<sys/types.h>
#include<sys/socket.h>

int main()
{
int fd_client,fd, len;
struct sockaddr_in add_server;
fd_client = socket(AF_INET,SOCK_STREAM,0);
if (fd_client == -1){
perror("fd_sock");
exit(1);
}
add_server.sin_family = AF_INET;
add_server.sin_port = ntohs(4001);
add_server.sin_addr.s_addr = inet_addr("127.0.0.1");
len = sizeof(add_server);
fd = connect(fd_client,(struct sockaddr*)&add_server,len);
if(fd == -1)
perror("connect");
write(fd,"Hellon",6);
return 0;
}
a) the server will write back to the client whatever the clinet will write to the server
b) the client server communication will not work
c) the response can not be determined
d) none of the mentioned
In this program, the third argument of the socket() is used for _____ potocol.
#include<stdio.h>
#include<sys/types.h>
#include<sys/socket.h>
int main()
{
int fd_socket;
if(socket(AF_UNIX,SOCK_STREAM,0) == -1)
perror("socket");
return 0;
}
a) TCP/IP
b) UDP
c) both (a) and (b)
d) none of mentioned