nitpicking and better c standard compliant code

This commit is contained in:
Oliver Feldt 2014-06-10 22:22:10 +02:00
parent e315738b37
commit 297863493f

View file

@ -1,26 +1,28 @@
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main() {
int ret;
size_t nbytes = 0;
char *input_str = NULL;
char *password = "23door42\n";
const char *password = "23door42\n";
int main(void) {
size_t input_size = 0;
char *input_line = NULL;
printf("Please enter Password: ");
ret = getline(&input_str, &nbytes, stdin);
if (ret == -1) {
puts("Error");
} else if (strcmp(input_str, password) == 0) {
puts("Success");
ret = 0;
// read in password from standard input, exit on error.
if (getline(&input_line, &input_size, stdin) == -1) {
perror("Error");
exit(EXIT_FAILURE);
}
// compare password, print info, exit appropriately
if (strcmp(input_line, password) == 0) {
puts("Success!");
exit(EXIT_SUCCESS);
} else {
puts("How about no?!");
ret = -1;
exit(EXIT_FAILURE);
}
free(input_str);
return ret;
}