KvArt

dz5_save

Jun 1st, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.73 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include "dz5.h"
  5. /*Izvoz podataka u LDIF fajl*/
  6. void ExportLDIF(User *head, Ldif_f *LDIFFields, FILE *output) {
  7.     User *CurrUser;
  8.     Field *CurrField, *HeadField;
  9.     Ldif_f *CurrLDIF;
  10.     int i = 1;
  11.  
  12.     CurrLDIF = LDIFFields;
  13.     CurrUser = head;
  14.     HeadField = CurrUser->values;
  15.     CurrField = HeadField;
  16.     FirstRow(CurrField, output);
  17.     while (CurrUser) {
  18.         while (CurrLDIF) {
  19.             /*Pretraga za odgovarajucim poljem*/
  20.             CurrField = Search(HeadField, CurrLDIF->FieldValue);
  21.             /*Ispis u datoteku i pomeranje pokazivaca na sledeci podatak*/
  22.             if (CurrField->FieldValue) {
  23.                 fprintf(output, "%s ", CurrLDIF->FieldName);
  24.                 fprintf(output, "%s\n", CurrField->FieldValue);
  25.                 if (CurrLDIF->FieldValue == 5) fprintf(output, "modifytimestamp: 0\n");
  26.                 CurrLDIF = CurrLDIF->next;
  27.             }
  28.             /*Pomeranje pokazivaca na nov podatak*/
  29.             else {
  30.                 if (CurrLDIF->FieldValue == 5) fprintf(output, "modifytimestamp: 0\n");
  31.                 CurrLDIF = CurrLDIF->next;
  32.             }
  33.         }
  34.         /*Postavljanje pokazivaca na novog korisnika*/
  35.         CurrUser = CurrUser->next;
  36.         if (CurrUser) {
  37.             HeadField = CurrUser->values;
  38.             CurrField = HeadField;
  39.             CurrLDIF = LDIFFields;
  40.             fputc('\n', output);
  41.             FirstRow(CurrField, output);
  42.         }
  43.     }
  44. }
  45.  /*Ispis prvog reda u LDIF datoteku*/
  46. void FirstRow(Field *Curr, FILE *output) {
  47.     Field *Curr1;
  48.     int i = 1;
  49.  
  50.     Curr1 = Curr;
  51.     fprintf(output, "dn: cn=");
  52.     while (i <= 5) {
  53.         if ((i == 1)&& (Curr1->FieldValue))
  54.             fprintf(output, "%s ", Curr1->FieldValue);
  55.         if ((i == 2) && (Curr1->FieldValue))
  56.             fprintf(output, "%s,mail=", Curr1->FieldValue);
  57.         if ((i == 5) && (Curr1->FieldValue))
  58.             fprintf(output, "%s\n", Curr1->FieldValue);
  59.         Curr1 = Curr1->next;
  60.         i++;
  61.     }
  62. }
Add Comment
Please, Sign In to add comment