
11/06/2002, 10:30
|
| | Fecha de Ingreso: junio-2002
Mensajes: 1
Antigüedad: 22 años, 10 meses Puntos: 0 | |
Duda urgente sobre C Esto es parte de un programa que debería ser un servidor de correo. Tengo problemas en la parte de "altas de usuario" porque cuando quiero cambiar de directorio no lo hace y por lo tanto no guarda los datos donde necesito.Haber si alguien ve alguna solución.
void altas()
{
char login,*nick,p;
char paswd [10];
int a, n, m;
DIR *dire, *dp;
printf("\n\n\n.......Bienvenido a Altas.......\n\n\n");
chdir("/correo");
dire=opendir("/correo");
printf("\nIntroduce nick:");
scanf("%s",nick);
dp=opendir(nick);
if(dp!=(DIR *)0)
{printf("\nEl nick que ha elegido ya existe");
exit(-1);
}
else
{
a=mkdir(nick, 0744);
chdir(nick); //AQUI ESTA EL PROBLEMA,(CREO)!!!!
n=open("datos", O_CREAT|O_RDWR, 0777);
printf("Contraseña [6]:");
scanf("%s",&datos.contrasenya);
}
p='n';
do{
printf("\n nombre:");
scanf("%s", &datos.nombre);
printf("\n hola %s", &datos.nombre);
printf("\n apellidos:");
scanf("%s", &datos.apellidos);
printf("\n dni:");
scanf("%s", &datos.dni);
printf("\n domicilio:");
scanf("%s", &datos.domicilio);
printf("\n poblacion:");
scanf("%s", &datos.dni);
printf("\n Nombre:%s", &datos.nombre);
printf("\n Apellidos:%s", &datos.apellidos);
printf("\n dni:%s", &datos.dni);
printf("\n Domicilio:%s", &datos.domicilio);
printf("\n Poblacion:%s", &datos.poblacion);
printf("\n Estos son sus datos,¿son correctos? (s/n):");
scanf("\n%c",&p);
}while(p=='n');
write(n, &datos, sizeof(struct usuario));
printf("Ya ha creado su usuario");
close(n);
closedir(dp);
closedir(dire);
} |