ncohafmuta-1.4.2/bot/
ncohafmuta-1.4.2/helpfiles/
ncohafmuta-1.4.2/lib/emailver/
ncohafmuta-1.4.2/tzinfo/Atlantic/
ncohafmuta-1.4.2/tzinfo/Brazil/
ncohafmuta-1.4.2/tzinfo/Chile/
ncohafmuta-1.4.2/tzinfo/Indian/
ncohafmuta-1.4.2/tzinfo/Mexico/
ncohafmuta-1.4.2/tzinfo/Mideast/
ncohafmuta-1.4.2/tzinfo/SystemV/
ncohafmuta-1.4.2/utils/
ncohafmuta-1.4.2/utils/code_fragments/new_config/
/*** Handle macros... if any ***/
check_macro(user,inpstr)
int user;
char *inpstr;
{
int macnum,i,lng;
char line[ARR_SIZE];
char tmpnum[3];
char buffer[3];
char filename[FILE_NAME_LEN];
FILE *fp;

if (inpstr[0]=='.' && inpstr[1]>='0' && inpstr[1]<='9') {
   if (inpstr[1]>'0' && inpstr[1]<'2' && inpstr[2]>='0' && inpstr[2]<='9')
    {
     midcpy(inpstr,line,4,ARR_SIZE);
     midcpy(inpstr,tmpnum,1,2);
     macnum=atoi(tmpnum);
     if (inpstr[3]=='=') {
        midcpy(inpstr,buffer,4,5);
        if (!NERF_MACRO) {
        if (!strcmp(buffer,".n")) {
         write_str(user,CANT_MACRO);
         inpstr[0]=0;
         return;
         }
        }
        if (strlen(inpstr) > MACRO_LEN) {
         write_str(user,MACRO_LONG);
         inpstr[0]=0;
         return;
         }
      strcpy(ustr[user].macros[macnum],line);
      inpstr[0]=0;
      sprintf(t_mess,"%s/%s",MACRODIR,ustr[user].name);
      strncpy(filename,t_mess,FILE_NAME_LEN);

      if (!(fp=fopen(filename,"w"))) {
         write_str(user,"SYSTEM: Can't access your macro file");
         logerror("Cannot access macros files");
         return;
         }
      for (i=0;i<20;++i) {
         sprintf(mess,"%s\n",ustr[user].macros[i]);
         fputs(mess,fp);
         }
      FCLOSE(fp); 
      write_str(user,"Ok");
      }
   else {
      lng=inpstr[3];
      strcpy(inpstr,ustr[user].macros[macnum]);
      if (lng) {
         strcat(inpstr," ");
         strcat(inpstr,line);
         }
      }
   } /* end of main sub-if */
  else if (inpstr[1]>='0' && inpstr[1]<='9' && !isdigit(inpstr[2]))
   {        
   midcpy(inpstr,line,3,ARR_SIZE);
   macnum=inpstr[1]-'0';
   if (inpstr[2]=='=') {
        midcpy(inpstr,buffer,3,4);
        if (!NERF_MACRO) {
        if (!strcmp(buffer,".n")) {
         write_str(user,CANT_MACRO);
         inpstr[0]=0;
         return;
         }
        }
      if (strlen(inpstr) > MACRO_LEN) {
         write_str(user,MACRO_LONG);
         inpstr[0]=0;
         return;
         }
      strcpy(ustr[user].macros[macnum],line);
      inpstr[0]=0;
      sprintf(t_mess,"%s/%s",MACRODIR,ustr[user].name);
      strncpy(filename,t_mess,FILE_NAME_LEN);

      if (!(fp=fopen(filename,"w"))) {
         write_str(user,"SYSTEM: Can't access your macro file");
         logerror("Cannot access macros files");
         return;
         }
      for (i=0;i<20;++i) {
         sprintf(mess,"%s\n",ustr[user].macros[i]);
         fputs(mess,fp);
         }
      FCLOSE(fp); 
      write_str(user,"Ok");
      }
   else {
      lng=inpstr[2];
      strcpy(inpstr,ustr[user].macros[macnum]);
      if (lng) {
         strcat(inpstr," ");
         strcat(inpstr,line);
         }
      }
    } /* end of main sub-else */
   }
}