#ifndef SHARED_ENCRYPT_H
#define SHARED_ENCRYPT_H

#include <stdio.h>
#include <string.h>
#define __USE_XOPEN
#define _XOPEN_SOURCE
#include <unistd.h>


#include <sys/types.h>
#include <sys/stat.h>
                     

#include "../global.h"

#include "shared_util.h"
#include "shared_strtrm.h"
#include "shared_authenticate.h"
#include "shared_central_user.h"
#include "shared_lock.h"
#include "shared_super_util.h"
#include "shared_central_user.h"
#include "shared_user_index.h"
#include "shared_cs_util.h"
#include "shared_system_data.h"

#define MAX_SALT 20



#include "shared_central_user.h"

char *encrypted_password(const char *plaintext_password, const char *username);
int get_super_user_password (const  char *username, char *encrypted_password);
int confirm_super_password(const char *plaintext_passwd, const char *username);
void create_admin_user_dir(char *username, char *plaintext_passwd, ADMIN_CONFIG_STRUCT *conf);

int get_central_user_password (const  char *username, char *encrypted_password);
int write_central_password_file (const char *username,	const char *plaintext_password);

int
update_central_user ( const char *first, const char *last,
                         const char *id, const char * crs,
                         const char *realname, char *username,
                         char *plaintext_password);

int  write_password (const char *username,  const char *plaintext_password,const char *course_path);

USER_STATUS record_central_user_info(USER_STATUS status, const char *realname,  const char *username, const char *password,
				      const char *id, 	const char *crs);

#endif





