Your best bet is for the software to check in with a server you control
once a day or perhaps at a lower frequency. Anything running on the
user's computer can be messed with, even gettimeofday can be patched for
a running application.
In my experience trying to have a long running thread just for licensing
enforcement is the wrong problem to solve. I would recommend:
1. Have a license key that has the date of purchase and length of
license encoded in it.
2. Periodically (preferably on startup or every 24 hours if running
continously) check with a server to make sure that the license has not
been mucked with.
Please keep in mind that this merely raises the bar for license
manipulation and does not completely eliminate it.
HTH
AM
On 12/29/14 10:56 AM, Eelco Hoogendoorn wrote:
>
> Anything configurable from the OS would be rather easy to circumvent.
> A restart of the system would require a new check of internet based
> time anyway, to prevent simply loading an old disc image. The point is
> not to require an internet connection if the program is simply running
> for years on end in a lab, as it is intended to. Otherwise I could
> simply check the internet clock at more regular intervals.
>
>
>
> On Saturday, December 6, 2014 9:54:10 AM UTC+1, stephan preeker wrote:
>
> I would use a cron job. Something thats survives a restart of the
> system.
> Theoretically it probably would work..
>
> On Dec 6, 2014 12:33 AM, "Eelco Hoogendoorn"
> <
hoogendo...@gmail.com <javascript:>> wrote:
>
>
> I am planning to use gevent.sleep in an application where it
> may not have been used before; I want a greenlet to sleep for
> a year or more. The point is to force a renewed license
> check which cannot be circumvented by changing the system
> clock or rerouting internet based time queries.
>
> I gevent.sleep supposed to be stable over such times periods?
> Its specified in seconds, and a year is only 30 million of
> them, which should hardly overflow. But will this work at all?
> It probably isn't part of the standard test suite...
>
> Thanks for any insight you can offer!
> --
> You received this message because you are subscribed to the
> Google Groups "gevent: coroutine-based Python network library"
> group.
> To unsubscribe from this group and stop receiving emails from
> it, send an email to
gevent+un...@googlegroups.com <javascript:>.
> <
https://groups.google.com/d/optout>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "gevent: coroutine-based Python network library" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to
gevent+un...@googlegroups.com
> <mailto:
gevent+un...@googlegroups.com>.