I do understand, and the problem is that your question is similar to asking how to get a memory pointer from systemd for your program.
The short answer is, not doable. The bit longer answer is that /usr/sbin/dovecot is a fancy service supervisor, it's job is to launch and manage processes, it won't give you persistence service for data. Aki > On 14/03/2024 07:49 EET Joan Moreau via dovecot <dovecot@dovecot.org> wrote: > > > No, you don´t understand > > There is a core process (/usr/bin/dovecot) running all the time. So I > want to allocate a memory block, the core process keep it and it is > retrievable by the pluging when laded again > > At exit of /usr/bin/dovecot, it just does a "delete()" of the said > allocation > > On 2024-03-14 13:25, Aki Tuomi via dovecot wrote: > > > Hi! > > > > Sorry but that's just not possible, ther is no "core" where to create > > such object. There is no "dovecot" where to store things. > > > > When user logs in, dovecot executes /usr/libexec/dovecot/imap and > > transfers the connection fd there. then plugins and stuff are loaded, > > and the user does what he does, and then plugins and stuff are unloaded > > and process exists and no longer exists in memory. > > > > You are clearly asking about memory persistence between sessions, and > > this can be done with > > > > a) services (internal or external), such as redis, sql, or something > > else > > b) storing things to disk > > > > Aki > > > > On 13/03/2024 18:45 EET Joan Moreau via dovecot <dovecot@dovecot.org> > > wrote: > > > > No, I am not referring to that > > > > I want to create an object at first call in memory > > > > that object would be retrievable at second and furthers calls of the > > plugin, as long as dovecot is running > > > > On 2024-03-13 16:29, Aki Tuomi via dovecot wrote: > > > > Not really no. You should use e.g. dict inteface for storing this kind > > of stateful data. When deinit is called the calling core process will > > likely die too. > > > > Aki > > > > On 13/03/2024 10:19 EET Joan Moreau <j...@grosjo.net> wrote: > > > > Keep a pointer in memory retrievable each time a plugin is called > > > > So the plugin keep the memory, not has to restart everything at each > > call > > > > On 12 March 2024 08:53:38 Aki Tuomi via dovecot <dovecot@dovecot.org> > > wrote: > > > > On 11/03/2024 10:42 EET Joan Moreau <j...@grosjo.net> wrote: > > > > Hi > > Is it possible, from a plugin perspective, to create and recover a > > pointer in the core process (i.e. memory not lost between 2 calls to > > the plugin, even after the "deinit" of the plugin" ) ? > > > > Thanks > > Hi Joan! > > > > May I ask what you are attempting to achieve in more detail? > > > > Aki > > _______________________________________________ > > dovecot mailing list -- dovecot@dovecot.org > > To unsubscribe send an email to dovecot-le...@dovecot.org > > _______________________________________________ > > dovecot mailing list -- dovecot@dovecot.org > > To unsubscribe send an email to dovecot-leave@dovecot.orgNo, I am not > > referring to that > > I want to create an object at first call in memory > > that object would be retrievable at second and furthers calls of the > > plugin, as > > long as dovecot is running > > > > On 2024-03-13 16:29, Aki Tuomi via dovecot wrote: > > Not really no. You should use e.g. dict inteface for storing this > > kind of stateful data. When deinit is called the calling core process > > will likely die too. > > > > Aki > > > > On 13/03/2024 10:19 EET Joan Moreau <j...@grosjo.net> wrote: > > > > Keep a pointer in memory retrievable each time a plugin is > > called > > > > So the plugin keep the memory, not has to restart > > everything at each call > > > > On 12 March 2024 08:53:38 Aki Tuomi via dovecot > > <dovecot@dovecot.org> wrote: > > > > On 11/03/2024 10:42 EET Joan Moreau > > <j...@grosjo.net> wrote: > > > > Hi > > Is it possible, from a plugin > > perspective, to create and recover a > > pointer in the core process (i.e. > > memory not lost between 2 calls to the > > plugin, even after the "deinit" of the > > plugin" ) ? > > > > Thanks > > > > Hi Joan! > > > > May I ask what you are attempting to achieve in > > more detail? > > > > Aki > > _______________________________________________ > > dovecot mailing list -- dovecot@dovecot.org > > To unsubscribe send an email to dovecot- > > le...@dovecot.org > > _______________________________________________ > > dovecot mailing list -- dovecot@dovecot.org > > To unsubscribe send an email to dovecot-le...@dovecot.org > > > > _______________________________________________ > > dovecot mailing list -- dovecot@dovecot.org > > To unsubscribe send an email to dovecot-le...@dovecot.org > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot-leave@dovecot.orgNo, you don´t > understand > There is a core process (/usr/bin/dovecot) running all the time. So I want to > allocate a memory block, the core process keep it and it is retrievable by the > pluging when laded again > At exit of /usr/bin/dovecot, it just does a "delete()" of the said allocation > > > On 2024-03-14 13:25, Aki Tuomi via dovecot wrote: > Hi! > > Sorry but that's just not possible, ther is no "core" where to create > such object. There is no "dovecot" where to store things. > > When user logs in, dovecot executes /usr/libexec/dovecot/imap and > transfers the connection fd there. then plugins and stuff are loaded, > and the user does what he does, and then plugins and stuff are > unloaded and process exists and no longer exists in memory. > > You are clearly asking about memory persistence between sessions, and > this can be done with > > a) services (internal or external), such as redis, sql, or something > else > b) storing things to disk > > Aki > > On 13/03/2024 18:45 EET Joan Moreau via dovecot > <dovecot@dovecot.org> wrote: > > > No, I am not referring to that > > I want to create an object at first call in memory > > that object would be retrievable at second and furthers > calls of the > plugin, as long as dovecot is running > > On 2024-03-13 16:29, Aki Tuomi via dovecot wrote: > > Not really no. You should use e.g. dict inteface > for storing this kind > of stateful data. When deinit is called the > calling core process will > likely die too. > > Aki > > On 13/03/2024 10:19 EET Joan Moreau > <j...@grosjo.net> wrote: > > Keep a pointer in memory retrievable each time a > plugin is called > > So the plugin keep the memory, not has to restart > everything at each > call > > On 12 March 2024 08:53:38 Aki Tuomi via dovecot > <dovecot@dovecot.org> > wrote: > > On 11/03/2024 10:42 EET Joan Moreau > <j...@grosjo.net> wrote: > > Hi > Is it possible, from a plugin perspective, to > create and recover a > pointer in the core process (i.e. memory not lost > between 2 calls to > the plugin, even after the "deinit" of the > plugin" ) ? > > Thanks > Hi Joan! > > May I ask what you are attempting to achieve in > more detail? > > Aki > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot- > le...@dovecot.org > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot- > leave@dovecot.orgNo, I am not referring to that > I want to create an object at first call in memory > that object would be retrievable at second and furthers > calls of the plugin, as > long as dovecot is running > > > > > On 2024-03-13 16:29, Aki Tuomi via dovecot wrote: > Not really no. You should use e.g. dict inteface for > storing this > kind of stateful data. When deinit is called the > calling core process > will likely die too. > > Aki > > On 13/03/2024 10:19 EET Joan Moreau > <j...@grosjo.net> wrote: > > > Keep a pointer in memory retrievable each time a > plugin is > called > > So the plugin keep the memory, not has to restart > everything at each call > > > > On 12 March 2024 08:53:38 Aki Tuomi via dovecot > <dovecot@dovecot.org> wrote: > > On 11/03/2024 10:42 EET Joan Moreau > <j...@grosjo.net> wrote: > > > Hi > Is it possible, from a plugin > perspective, to create and recover a > pointer in the core process (i.e. > memory not lost between 2 calls to the > plugin, even after the "deinit" of the > plugin" ) ? > > Thanks > > Hi Joan! > > May I ask what you are attempting to achieve > in > more detail? > > Aki > > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot- > le...@dovecot.org > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot- > le...@dovecot.org > > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot-le...@dovecot.org > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot-le...@dovecot.org > > _______________________________________________ > dovecot mailing list -- dovecot@dovecot.org > To unsubscribe send an email to dovecot-le...@dovecot.org _______________________________________________ dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-le...@dovecot.org