Ab sofort ist der Login auf der Weboberfläche von git.fh-muenster.de bevorzugt über FH Muenster SSO möglich.

Commit c82db4fd authored by Sebastian Schinzel's avatar Sebastian Schinzel

Rechtschreibkorrekturen und Formatierung.

parent 296db417
...@@ -27,13 +27,13 @@ void error(char *msg) { ...@@ -27,13 +27,13 @@ void error(char *msg) {
/** /**
* Erstellt und Konfiguriert den Netzwerk-Socket, ÃŒber den die Verbindungen * Erstellt und konfiguriert den Netzwerk-Socket, über den die Verbindungen
* angenommen werden. * angenommen werden.
*/ */
void setup_socket() { void setup_socket() {
int opt = 1; int opt = 1;
/* /*
* Setzt Konfigurationsvariablen fÃŒr den Socket, z.B. die Portnummer. * Setzt Konfigurationsvariablen für den Socket, z. B. die Portnummer.
*/ */
bzero((char *) &serv_addr, sizeof(serv_addr)); bzero((char *) &serv_addr, sizeof(serv_addr));
serv_addr.sin_family = AF_INET; serv_addr.sin_family = AF_INET;
...@@ -48,7 +48,7 @@ void setup_socket() { ...@@ -48,7 +48,7 @@ void setup_socket() {
error("ERROR opening socket"); error("ERROR opening socket");
/* /*
* Verwende den Socket, selbst wenn er aus einer vorigen AusfÃŒhrung * Verwende den Socket, selbst wenn er aus einer vorigen Ausführung
* im TIME_WAIT Status ist. * im TIME_WAIT Status ist.
*/ */
setsockopt(sockfd,SOL_SOCKET,SO_REUSEADDR,(const char *)&opt,sizeof(int)); setsockopt(sockfd,SOL_SOCKET,SO_REUSEADDR,(const char *)&opt,sizeof(int));
...@@ -61,11 +61,11 @@ void setup_socket() { ...@@ -61,11 +61,11 @@ void setup_socket() {
/* /*
* Horche auf dem Socket nach eingehenden Verbindungen. Es werden maximal * Horche auf dem Socket nach eingehenden Verbindungen. Es werden maximal
* fÃŒnf gleichzeitige Verbindungen erlaubt. * fünf gleichzeitige Verbindungen erlaubt.
*/ */
listen(sockfd, 5); listen(sockfd, 5);
/*Lege fest in welchem 'Bereich' spÀter select() 'warten' soll. ( hier: 0 - 3)*/ /* Lege fest in welchem 'Bereich' später select() 'warten' soll. ( hier: 0 - 3)*/
maxfd = 1 + ((sockfd > STDIN_FILENO) ? sockfd : STDIN_FILENO); maxfd = 1 + ((sockfd > STDIN_FILENO) ? sockfd : STDIN_FILENO);
} }
...@@ -88,27 +88,24 @@ void main_loop() { ...@@ -88,27 +88,24 @@ void main_loop() {
/* "Datenhygiene" */ /* "Datenhygiene" */
bzero(buffer, BUFFER_SIZE); bzero(buffer, BUFFER_SIZE);
/*'Zero' das FD-Set (Set besteht aus sockfd und STDIN)*/
FD_ZERO(&fds); FD_ZERO(&fds);
/*Setze Bits(/Flags) der FDs neu*/
FD_SET(sockfd, &fds); FD_SET(sockfd, &fds);
FD_SET(STDIN_FILENO, &fds); FD_SET(STDIN_FILENO, &fds);
/* select() erlaubt es auf mehrere file descriptors (FD_SETs) /* select() erlaubt es auf mehrere file descriptors (FD_SETs)
(z.B. socket und stdin) zu warten, bis einer "ready" fÃŒr (z.B. socket und stdin) zu warten, bis einer "ready" für
jegliche I/O operation (z.B. 'read()' ) ist. */ jegliche I/O operation (z.B. 'read()' ) ist. */
select(maxfd, &fds, NULL, NULL, NULL); select(maxfd, &fds, NULL, NULL, NULL);
//Input aus der Konsole:
if (FD_ISSET(STDIN_FILENO, &fds)){ if (FD_ISSET(STDIN_FILENO, &fds)){
length = read(STDIN_FILENO, buffer, BUFFER_SIZE - 1); length = read(STDIN_FILENO, buffer, BUFFER_SIZE - 1);
// Testweise Server sauber beenden mit '.' als Input ÃŒber Konsole // Testweise Server sauber beenden mit '.' als Input über Konsole
if(buffer[0]=='.') if(buffer[0]=='.')
break; break;
if (length < 0) if (length < 0)
error("ERROR reading from stdin"); error("ERROR reading from stdin");
} }
//Input aus Socket //Input aus Socket
...@@ -121,20 +118,20 @@ void main_loop() { ...@@ -121,20 +118,20 @@ void main_loop() {
if (length < 0) if (length < 0)
error("ERROR reading from socket"); error("ERROR reading from socket");
/* /*
* Schreibe die ausgehenden Daten auf den Socket zurÃŒck. * Schreibe die ausgehenden Daten auf den Socket zurück.
*/ */
length = write(newsockfd, buffer, length); length = write(newsockfd, buffer, length);
if (length < 0) if (length < 0)
error("ERROR writing to socket"); error("ERROR writing to socket");
/* /*
* Schließe die Verbindung. * Schließe die Verbindung.
*/ */
close(newsockfd); close(newsockfd);
} }
/* /*
* Gib die eingegangenen Daten (zusÀtzlich) auf der Kommandozeile aus. * Gib die eingegangenen Daten (zusätzlich) auf der Kommandozeile aus.
*/ */
length = write(STDIN_FILENO, buffer, length); length = write(STDIN_FILENO, buffer, length);
if (length < 0) if (length < 0)
...@@ -142,8 +139,8 @@ void main_loop() { ...@@ -142,8 +139,8 @@ void main_loop() {
} }
/* /*
* Lösche den Buffer und schließe den Socket. Dieser Aufruf sollte wegen der * Lösche den Buffer und schließe den Socket. Dieser Aufruf sollte wegen der
* Endlosschleife niemals ausgefÃŒhrt werden. * Endlosschleife niemals ausgeführt werden.
*/ */
free(buffer); free(buffer);
close(sockfd); close(sockfd);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment