1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
svlad2 [7]
3 years ago
11

Write a client program that writes a struct with a privateFIFO name (call it FIFO_XXXX, where XXXX is the pid that you got from

the getpid( ) function) to the server. Have the server read the privateFIFO name and write a message back to the client. Read the message and print it on the client side
Computers and Technology
1 answer:
ivann1987 [24]3 years ago
3 0

Answer:

client code:

#include <stdio.h>

#include <fcntl.h>

#include <sys/stat.h>

#include <sys/types.h>

#include <unistd.h>

#include <stdlib.h>

#include <string.h>

int main (void)

{

 struct values

 {

   char privateFIFO[14];

   int intbuff;

 }input;

 int fda;  // common FIFO to read to write to server

 int fdb;      // Private FIFO to read from server

 int clientID;

 int retbuff;

 char temp[14];

 clientID = getpid();

 strcpy(input.privateFIFO, "FIFO_");

 sprintf(temp, "%d", clientID);

 strcat(input.privateFIFO, temp);

 printf("\nFIFO name is %s", input.privateFIFO);

 // Open common FIFO to write to server

 if((fda=open("FIFO_to_server", O_WRONLY))<0)

    printf("cant open fifo to write");

 write(fda, &input, sizeof(input));    // write the struct to the server

 close(fda);

 // Open private FIFO to read

 if((fdb=open(input.privateFIFO, O_RDONLY))<0)

    read(fdb, &retbuff, sizeof(retbuff));

 printf("\nAll done\n");

 close(fdb);

}

server code:

#include <stdio.h>

#include <errno.h>

#include <fcntl.h>

#include <sys/stat.h>

#include <sys/types.h>

#include <unistd.h>

#include <stdlib.h>

#include <string.h>

struct values

 {

   char privateFIFO[14];

   int intbuff;

 }input;

int main (void)

{

 int fda;  //common FIFO to read from client

 int fdb;  //private FIFO to write to client

 int retbuff;

 int output;

// create the common FIFO  

 if ((mkfifo("FIFO_to_server",0666)<0 && errno != EEXIST))

       {

       perror("cant create FIFO_to_server");

       exit(-1);

}

// open the common FIFO

 if((fda=open("FIFO_to_server", O_RDONLY))<0)

    printf("cant open fifo to write");

output = read(fda, &input, sizeof(input));

// create the private FIFO

 if ((mkfifo(input.privateFIFO, 0666)<0 && errno != EEXIST))

 {

   perror("cant create privateFIFO_to_server");

   exit(-1);

 }

 printf("Private FIFO received from the client and sent back from server is: %d", output);

 //open private FIFO to write to client

if((fdb=open(input.privateFIFO, O_WRONLY))<0)

   printf("cant open fifo to read");

 write(fdb, &retbuff, sizeof(retbuff));

 close(fda);

 unlink("FIFO_to_server");

 close(fdb);

 unlink(input.privateFIFO);

}

Explanation:

You might be interested in
Your help will help me understand my answers by comparing to yours. Your kind contribution is very much appreciated.
OLEGan [10]
4. B
for # 5 what illustration are u talking about
6. D
7. D
8. don't understand that question

sorry these questions might be wrong

6 0
3 years ago
Explain two ways by which the calendar meets or fails to meet the criteria of showing the correct data
gtnhenbr [62]

Answer:

The two ways the calendar meets the criteria of showing the correct date are;

1) The calendar can give dates in the 12 months in a year

2) The calendar can show up to the 31 different days in a month

Explanation:

The two ways in which the calendar meets the criteria of showing the correct date are;

1) The number number of long blocks with 4 different months each = Three

Therefore, the total number of months the blocks can hold = 3 × 4 months = 12 months = The number of months in a year

2) The number of faces on each dice = 6 faces

The number of dice = 2 dice

The total number of faces = 12

The number of identical faces = 2 (11th and 22nd of the month)

The number of unique faces = 10

The number of combinations of the dices = ₁₀C₂ = 45

The number of combination of faces required to show = 1 to 31 = 31 combination

Therefore, there are adequate combinations on the dice to show all the dates of month

7 0
3 years ago
According to the video, which tasks do Police Patrol Officers perform? Select all that apply.
krek1111 [17]

Answer:

The answer is B, E, and F

Explanation:

4 0
3 years ago
Read 2 more answers
Skinner designed a soundproof apparatus, often equipped with a lever or bar, with which he conducted his experiments in operant
Jlenok [28]

Answer: Skinner box

Explanation: Skinner box is referred as the environment to conduct an experiment to observe the natural behavior of the element in a chamber. The Skinner box is also known as operant conditioning chamber. It is most commonly used for the experiments to be conducted with the animals in the operant conditioning chamber for the research purpose.

It is also soundproof tool and also refereed as the lever box as it contains lever .Thus the answer is Skinner box.

5 0
3 years ago
How many passes will it take to find the five in this list?
Savatey [412]

Answer:

1 im prety sure

Explanation:

5 0
3 years ago
Read 2 more answers
Other questions:
  • A switch operates in the OSI reference model __________ layer and uses the __________ address to forward packets.
    8·1 answer
  • Microsoft Xbox operating system provides Xbox programmers with a set of common standards to use to access controllers, the Kinec
    6·1 answer
  • What is Mars internal composition
    7·1 answer
  • _____ is the management function that monitors the performance of the firm and makes improvements when necessary
    15·1 answer
  • List the five parts of a system.describe them.
    13·1 answer
  • What is the term for an understanding about the processes that underlie memory, which emerges and improves during middle childho
    7·2 answers
  • 7.2 need help plzs 15 points
    13·1 answer
  • Anyone trying to play fortnite ? im bored lol
    6·2 answers
  • What would give Lucy, an entry-level candidate, an edge over others while she seeks a programmer’s position? Lucy, an entry-leve
    11·1 answer
  • When viewing an e-book section of an assignment in launchpad, you can return to your main course page at any time by clicking th
    5·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!