The program only read the first line and then stop
==============================
# Samba SMB password file
public:501:85DBEE24101CEFF8AAD3B435B51404EE
B51013B2730E1F16DF6DB7C3A73AD60:[U ]:LCT-3AB622A2:
admin:501:2B251B4003C6F043CA53DE06F7962527:C2D7C320A09B649A91AEC96D4CC32662:[UX ]:LCT-3E21AEC3:
==============================
root:~# ./getdata2
single_char = #
single_char =
single_char = S
single_char = a
single_char = m
single_char = b
single_char = a
single_char =
single_char = S
single_char = M
single_char = B
single_char =
single_char = p
single_char = a
single_char = s
single_char = s
single_char = w
single_char = o
single_char = r
single_char = d
single_char =
single_char = f
single_char = i
single_char = l
single_char = e
single_char =
=================================
#include <stdio.h>
read_smbpasswd_file()
{
FILE *file_pointer, *fopen();
char user_name[32];
char single_char;
int i = 0;
memset(user_name, '\0', 32);
file_pointer = fopen("/etc/samba/smbpasswd", "r");
single_char = getc(file_pointer);
while(!feof(file_pointer))
{
if (single_char != ':')
{
user_name[i] = single_char;
printf ("single_char = %c\n", single_char);
i++;
single_char = getc(file_pointer);
}
else
printf ("user_name[] = %s", user_name);
}
fclose (file_pointer);
}
/******************************************/
main()
{
read_smbpasswd_file();
}