1<?php
2/**
3 * This file is part of the FreeDSx LDAP package.
4 *
5 * (c) Chad Sikorra <Chad.Sikorra@gmail.com>
6 *
7 * For the full copyright and license information, please view the LICENSE
8 * file that was distributed with this source code.
9 */
10
11namespace FreeDSx\Ldap\Server\RequestHandler;
12
13use FreeDSx\Ldap\Entry\Entry;
14use FreeDSx\Ldap\Operation\Request\SearchRequest;
15use FreeDSx\Ldap\Server\RequestContext;
16
17/**
18 * Request Handlers wanting more control over the RootDSE may implement this interface.
19 *
20 * @author Chad Sikorra <Chad.Sikorra@gmail.com>
21 */
22interface RootDseHandlerInterface
23{
24    /**
25     * Either return your own RootDse, or just pass back / modify the entry already generated.
26     *
27     * @param RequestContext $context
28     * @param SearchRequest $request
29     * @param Entry $rootDse
30     * @return Entry
31     */
32    public function rootDse(RequestContext $context, SearchRequest $request, Entry $rootDse): Entry;
33}
34