~ubuntu-branches/debian/experimental/389-ds-base/experimental

« back to all changes in this revision

Viewing changes to ldap/servers/plugins/usn/usn.c

  • Committer: Package Import Robot
  • Author(s): Timo Aaltonen
  • Date: 2014-10-06 17:13:01 UTC
  • mfrom: (0.2.5)
  • Revision ID: package-import@ubuntu.com-20141006171301-px57k3g1k4ksj8cg
Tags: 1.3.3.3-1
* New upstream release.
* Dropped upstreamed patches, refresh others.
* control, rules, 389-ds-base.install: Add support for systemd.
* fix-obsolete-target.diff: Drop syslog.target from the service files.
* 389-ds-base.links: Mask the initscript so that it's not used with systemd.

Show diffs side-by-side

added added

removed removed

Lines of Context:
51
51
static int usn_bepreop_init(Slapi_PBlock *pb);
52
52
static int usn_betxnpreop_init(Slapi_PBlock *pb);
53
53
static int usn_bepostop_init(Slapi_PBlock *pb);
54
 
static int usn_rootdse_init();
 
54
static int usn_rootdse_init(Slapi_PBlock *pb);
55
55
 
56
56
static int usn_preop_delete(Slapi_PBlock *pb);
57
57
static int usn_bepreop_modify(Slapi_PBlock *pb);
68
68
static int usn_rootdse_search(Slapi_PBlock *pb, Slapi_Entry* e,
69
69
        Slapi_Entry* entryAfter, int *returncode, char *returntext, void *arg);
70
70
 
71
 
static int g_plugin_started = 0;
72
71
/*
73
72
 * Register USN plugin
74
73
 * Note: USN counter initialization is done in the backend (ldbm_usn_init).
234
233
}
235
234
 
236
235
static int
237
 
usn_rootdse_init()
 
236
usn_rootdse_init(Slapi_PBlock *pb)
238
237
{
239
238
    int rc = SLAPI_PLUGIN_FAILURE;
240
239
 
241
 
    if (slapi_config_register_callback(SLAPI_OPERATION_SEARCH, DSE_FLAG_PREOP,
 
240
    if (slapi_config_register_callback_plugin(SLAPI_OPERATION_SEARCH, DSE_FLAG_PREOP | DSE_FLAG_PLUGIN,
242
241
                                        "", LDAP_SCOPE_BASE, "(objectclass=*)", 
243
 
                                        usn_rootdse_search, NULL)) {
 
242
                                        usn_rootdse_search, NULL, pb)) {
244
243
        rc = SLAPI_PLUGIN_SUCCESS;
245
244
    }
246
245
 
259
258
 
260
259
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM, "--> usn_start\n");
261
260
 
262
 
    rc = usn_rootdse_init();
 
261
    rc = usn_rootdse_init(pb);
263
262
    rc |= usn_cleanup_start(pb);
264
263
    if (rc) {
265
264
        rc = SLAPI_PLUGIN_FAILURE;
289
288
        rc = SLAPI_PLUGIN_FAILURE;
290
289
    }
291
290
    slapi_value_free(&value);
292
 
    g_plugin_started = 1;
 
291
 
293
292
bail:
294
293
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM,
295
294
                    "<-- usn_start (rc: %d)\n", rc);
301
300
{
302
301
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM, "--> usn_close\n");
303
302
 
304
 
    g_plugin_started = 0;
 
303
    slapi_config_remove_callback(SLAPI_OPERATION_SEARCH, DSE_FLAG_PREOP,
 
304
            "", LDAP_SCOPE_BASE, "(objectclass=*)", usn_rootdse_search);
305
305
 
306
306
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM, "<-- usn_close\n");
307
307
 
433
433
bail:
434
434
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM,
435
435
                    "<-- usn_betxnpreop_add\n");
 
436
 
436
437
    return rc;
437
438
}
438
439
 
469
470
bail:
470
471
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM,
471
472
                    "<-- usn_betxnpreop_delete\n");
 
473
 
472
474
    return rc;
473
475
}
474
476
 
539
541
bail:
540
542
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM,
541
543
                    "<-- usn_bepostop\n");
 
544
 
542
545
    return rc;
543
546
}
544
547
 
590
593
bail:
591
594
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM,
592
595
                    "<-- usn_bepostop_mod\n");
 
596
 
593
597
    return rc;
594
598
}
595
599
 
626
630
bail:
627
631
    slapi_log_error(SLAPI_LOG_TRACE, USN_PLUGIN_SUBSYSTEM,
628
632
                    "<-- usn_bepostop\n");
 
633
 
629
634
    return rc;
630
635
}
631
636
 
747
752
                    "<-- usn_rootdse_search\n");
748
753
    return SLAPI_DSE_CALLBACK_OK;
749
754
}
750
 
 
751
 
int
752
 
usn_is_started()
753
 
{
754
 
    return g_plugin_started;
755
 
}