/* SELECT statements */
#define SELECT_RESTRICTIONS "SELECT binpath, data_limit, " \
" iftype, rstn_type, roaming, ifname, subscriber_id, " \
- " data_warn_limit, restriction_id FROM restrictions"
+ " data_warn_limit, monthly_limit, weekly_limit, daily_limit, month_start_date, " \
+ " restriction_id FROM restrictions"
#define SELECT_RESTRICTIONS_PER_APP "SELECT binpath, data_limit, " \
" iftype, rstn_type, roaming, ifname, subscriber_id, " \
- " data_warn_limit, restriction_id " \
+ " data_warn_limit, monthly_limit, weekly_limit, daily_limit, month_start_date, " \
+ " restriction_id " \
" FROM restrictions INDEXED BY restrictions_index " \
" WHERE binpath = ?"
/* UPDATE statement */
#define UPDATE_NET_RESTRICTIONS "UPDATE restrictions " \
" SET binpath = ?, data_limit = ?, iftype = ?, rstn_type = ?, " \
- " roaming = ?, ifname = ?, subscriber_id = ?, data_warn_limit = ? " \
+ " roaming = ?, ifname = ?, subscriber_id = ?, data_warn_limit = ?, " \
+ " monthly_limit = ?, weekly_limit = ?, daily_limit = ? " \
" WHERE restriction_id = ?"
/* INSERT statement */
#define INSERT_NET_RESTRICTIONS "INSERT INTO restrictions " \
" (binpath, data_limit, iftype, rstn_type, " \
- " roaming, ifname, subscriber_id, data_warn_limit) " \
- " VALUES (?, ?, ?, ?, ?, ?, ?, ?)"
+ " roaming, ifname, subscriber_id, data_warn_limit, " \
+ " monthly_limit, weekly_limit, daily_limit, month_start_date) " \
+ " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
static void __finalize_delete(void);
data.ifname = (char *)sqlite3_column_text(stmt, 5);
data.subscriber_id = (char *)sqlite3_column_text(stmt, 6);
data.data_warn_limit = sqlite3_column_int64(stmt, 7);
- data.restriction_id = sqlite3_column_int64(stmt, 8);
+ data.monthly_limit = sqlite3_column_int64(stmt, 8);
+ data.weekly_limit = sqlite3_column_int64(stmt, 9);
+ data.daily_limit = sqlite3_column_int64(stmt, 10);
+ data.restriction_id = sqlite3_column_int64(stmt, 11);
if (restriction_cb(&data, user_data) == STC_CANCEL)
rc = SQLITE_DONE; //LCOV_EXCL_LINE
data.ifname = (char *)sqlite3_column_text(stmt, 5);
data.subscriber_id = (char *)sqlite3_column_text(stmt, 6);
data.data_warn_limit = sqlite3_column_int64(stmt, 7);
- data.restriction_id = sqlite3_column_int64(stmt, 8);
+ data.monthly_limit = sqlite3_column_int64(stmt, 8);
+ data.weekly_limit = sqlite3_column_int64(stmt, 9);
+ data.daily_limit = sqlite3_column_int64(stmt, 10);
+ data.month_start_date = sqlite3_column_int(stmt, 11);
+ data.restriction_id = sqlite3_column_int64(stmt, 12);
if (restriction_cb(&data, user_data) == STC_CANCEL)
rc = SQLITE_DONE; //LCOV_EXCL_LINE
DB_ACTION(sqlite3_bind_text(stmt, 7, info->subscriber_id ? info->subscriber_id : "",
-1, SQLITE_TRANSIENT));
DB_ACTION(sqlite3_bind_int64(stmt, 8, info->data_warn_limit));
+ DB_ACTION(sqlite3_bind_int64(stmt, 9, info->monthly_limit));
+ DB_ACTION(sqlite3_bind_int64(stmt, 10, info->weekly_limit));
+ DB_ACTION(sqlite3_bind_int64(stmt, 11, info->daily_limit));
if (info->restriction_id)
- DB_ACTION(sqlite3_bind_int64(stmt, 9, info->restriction_id));
+ DB_ACTION(sqlite3_bind_int64(stmt, 12, info->restriction_id));
+ else
+ DB_ACTION(sqlite3_bind_int64(stmt, 12, info->month_start_date));
if (sqlite3_step(stmt) != SQLITE_DONE) {
STC_LOGE("Failed to set network restriction: %s\n", //LCOV_EXCL_LINE