/* nwarchive.h - mars_nwe private archive metadata helpers */
#ifndef _NWARCHIVE_H_
#define _NWARCHIVE_H_

#include "net.h"

#define MARS_NWE_ARCHIVE_HAS_DATE     0x01
#define MARS_NWE_ARCHIVE_HAS_TIME     0x02
#define MARS_NWE_ARCHIVE_HAS_ARCHIVER 0x04

#define MARS_NWE_FILEINFO_HAS_CREATE_DATE 0x01
#define MARS_NWE_FILEINFO_HAS_CREATE_TIME 0x02
#define MARS_NWE_FILEINFO_HAS_CREATOR     0x04
#define MARS_NWE_FILEINFO_HAS_MODIFIER    0x08

void mars_nwe_get_archive_info(char *unixname,
                               uint16 *archive_date,
                               uint16 *archive_time,
                               uint32 *archiver_id,
                               uint8  *flags);

int mars_nwe_set_archive_info(char *unixname,
                              int set_date, uint16 archive_date,
                              int set_time, uint16 archive_time,
                              int set_archiver, uint32 archiver_id);

void mars_nwe_get_file_info(char *unixname,
                            uint16 *create_date,
                            uint16 *create_time,
                            uint32 *creator_id,
                            uint8  *flags);

int mars_nwe_set_file_info(char *unixname,
                           int set_create_date, uint16 create_date,
                           int set_create_time, uint16 create_time,
                           int set_creator, uint32 creator_id);

void mars_nwe_get_file_modifier_info(char *unixname,
                                     uint32 *modifier_id,
                                     uint8  *flags);

int mars_nwe_set_file_modifier_info(char *unixname,
                                    int set_modifier, uint32 modifier_id);

#endif
