static void run (void *cls, char *const *args, const char *cfgfile, const struct GNUNET_CONFIGURATION_Handle *cfg) { struct GNUNET_NAMESTORE_PluginFunctions *nsp; struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded zone_key; struct GNUNET_CRYPTO_ShortHashCode zone; ok = 0; nsp = load_plugin (cfg); if (NULL == nsp) { FPRINTF (stderr, "%s", "Failed to initialize namestore. Database likely not setup, skipping test.\n"); return; } put_record (nsp, 1); get_record (nsp, 1); memset (&zone_key, 1, sizeof (zone_key)); GNUNET_CRYPTO_short_hash (&zone_key, sizeof (zone_key), &zone); nsp->delete_zone (nsp->cls, &zone); unload_plugin (nsp); }
feather_callback void do_sched_trace_task_resume(unsigned long id, unsigned long _task) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec = get_record(ST_RESUME, t); if (rec) { rec->data.resume.when = now(); put_record(rec); } }
feather_callback void do_sched_trace_task_block(unsigned long id, unsigned long _task) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec = get_record(ST_BLOCK, t); if (rec) { rec->data.block.when = now(); put_record(rec); } }
feather_callback void do_sched_trace_task_release(unsigned long id, unsigned long _task) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec = get_record(ST_RELEASE, t); if (rec) { rec->data.release.release = get_release(t); rec->data.release.deadline = get_deadline(t); put_record(rec); } }
feather_callback void do_sched_trace_sys_release(unsigned long id, unsigned long _start) { lt_t *start = (lt_t*) _start; struct st_event_record* rec = get_record(ST_SYS_RELEASE, NULL); if (rec) { rec->data.sys_release.when = now(); rec->data.sys_release.release = *start; put_record(rec); } }
feather_callback void do_sched_trace_task_name(unsigned long id, unsigned long _task) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec = get_record(ST_NAME, t); int i; if (rec) { for (i = 0; i < min(TASK_COMM_LEN, ST_NAME_LEN); i++) rec->data.name.cmd[i] = t->comm[i]; put_record(rec); } }
feather_callback void do_sched_trace_task_completion(unsigned long id, unsigned long _task, unsigned long forced) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec = get_record(ST_COMPLETION, t); if (rec) { rec->data.completion.when = now(); rec->data.completion.forced = forced; put_record(rec); } }
feather_callback void do_sched_trace_task_param(unsigned long id, unsigned long _task) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec = get_record(ST_PARAM, t); if (rec) { rec->data.param.wcet = get_exec_cost(t); rec->data.param.period = get_rt_period(t); rec->data.param.phase = get_rt_phase(t); rec->data.param.partition = get_partition(t); put_record(rec); } }
feather_callback void do_sched_trace_task_switch_away(unsigned long id, unsigned long _task) { struct task_struct *t = (struct task_struct*) _task; struct st_event_record* rec; if (is_realtime(t)) { rec = get_record(ST_SWITCH_AWAY, t); if (rec) { rec->data.switch_away.when = now(); rec->data.switch_away.exec_time = get_exec_time(t); put_record(rec); } } }
static void run (void *cls, char *const *args, const char *cfgfile, const struct GNUNET_CONFIGURATION_Handle *cfg) { struct GNUNET_NAMESTORE_PluginFunctions *nsp; ok = 0; nsp = load_plugin (cfg); if (NULL == nsp) { FPRINTF (stderr, "%s", "Failed to initialize namestore. Database likely not setup, skipping test.\n"); return; } put_record (nsp, 1); get_record (nsp, 1); unload_plugin (nsp); }
int bbssndmail_main() { char mymaildir[80], userid[80], filename[80], filename2[80], title[80], title2[80], *content; char *ptr; int i, sig, backup, allfriend, mark = 0, reply = 0, num = 0, use_ubb; struct userec *u; struct fileheader fh; html_header(1); strsncpy(userid, getparm("userid"), 40); if (!loginok || (isguest && strcmp(userid, "SYSOP"))) http_fatal("匆匆过客不能写信,请先登录"); sprintf(mymaildir, "mail/%c/%s/.DIR", mytoupper(currentuser->userid[0]), currentuser->userid); if ((ptr=check_mailperm(currentuser))) http_fatal(ptr); changemode(SMAIL); strsncpy(title, getparm("title"), 50); backup = strlen(getparm("backup")); allfriend = strlen(getparm("allfriend")); reply = atoi(getparm("reply")); num = atoi(getparm("num")); use_ubb = strlen(getparm("useubb")); if (!strstr(userid, "@") && !allfriend) { if (getuser(userid, &u) <= 0) http_fatal("错误的收信人帐号 %s", userid); strcpy(userid, u->userid); if (inoverride(currentuser->userid, userid, "rejects")) http_fatal("无法发信给这个人"); } if (!USERPERM(currentuser, PERM_LOGINOK) && strcmp(userid, "SYSOP")) http_fatal("未通过注册用户只能给SYSOP写信!"); for (i = 0; i < strlen(title); i++) if (title[i] <= 27 && title[i] >= -1) title[i] = ' '; sig = atoi(getparm("signature")); content = getparm("text"); if (title[0] == 0) strcpy(title, "没主题"); sprintf(filename, "bbstmpfs/tmp/%d.tmp", thispid); sprintf(filename2, "bbstmpfs/tmp/%d.tmp2", thispid); if (use_ubb) ubb2ansi(content, filename2); else f_write(filename2, content); if (insertattachments_byfile(filename, filename2, currentuser->userid) > 0) mark |= FH_ATTACHED; unlink(filename2); if (!allfriend) { snprintf(title2, sizeof (title2), "{%s} %s", userid, title); post_mail(userid, title, filename, currentuser->userid, currentuser->username, fromhost, sig - 1, mark); } else { loadfriend(currentuser->userid); snprintf(title2, sizeof (title2), "[群体信件] %.60s", title); for (i = 0; i < friendnum; i++) { if (getuser(fff[i].id, &u) <= 0) { u = NULL; continue; } if (inoverride (currentuser->userid, fff[i].id, "rejects")) continue; post_mail(fff[i].id, title2, filename, currentuser->userid, currentuser->username, fromhost, sig - 1, mark); } } if (backup) post_mail(currentuser->userid, title2, filename, currentuser->userid, currentuser->username, fromhost, sig - 1, mark); unlink(filename); if (reply > 0) { /* churinga - add reply mark 'R' */ if (get_record(&fh, sizeof(struct fileheader), num, mymaildir) > 0) { fh.accessed |= FH_REPLIED; put_record(&fh, sizeof (struct fileheader), num, mymaildir); } } if(!(u->userdefine & DEF_SEEWELC1)) printf("发送失败,此用户已经关闭信箱。"); else printf("信件已寄给%s.<br>\n", allfriend ? "所有好友" : userid); if (backup) printf("信件已经备份.<br>\n"); printf("<a href='javascript:history.go(-2)'>返回</a>"); http_quit(); return 0; }