TF_CB_FEATURES_CHANGED in LeaseCallback

In TurboFloat's Example.c, in LeaseCallback(), it says: case TF_CB_FEATURES_CHANGED: //TODO: reload any features using TF_GetFeatureValue().

What exactly is meant here? Is the purpose to let the client know that, for example, the expiration date may have changed?

By the way, can the expiration date of a license be controlled on the TurboFloat's server side or only on the client side?

If you're using custom license fields in your app, then the purpose of the callback is to re-load any custom license fields you're using.

No user-notification is needed. It's all about your backend code.

Do you mean that it will be called if, for example, a custom license field (like expiration date) has been changed via your Web site?

Yes. If you change the custom license fields, they will eventually reach the end-user. More information in here: https://wyday.com/limelm/help/license-features/#change