| 1551 | |
| 1552 | |
| 1553 | static void prt_request(OUTFILE outfile, const lhb* LOCK_header, const lrq* request) |
| 1554 | { |
| 1555 | /************************************** |
| 1556 | * |
| 1557 | * p r t _ r e q u e s t |
| 1558 | * |
| 1559 | ************************************** |
| 1560 | * |
| 1561 | * Functional description |
| 1562 | * Print a format request block. |
| 1563 | * |
| 1564 | **************************************/ |
| 1565 | |
| 1566 | if (!sw_html_format) |
| 1567 | FPRINTF(outfile, "REQUEST BLOCK %6" SLONGFORMAT"\n", SRQ_REL_PTR(request)); |
| 1568 | else |
| 1569 | { |
| 1570 | const SLONG rel_request = SRQ_REL_PTR(request); |
| 1571 | FPRINTF(outfile, "<a name=\"%s%" SLONGFORMAT"\">REQUEST BLOCK %6" SLONGFORMAT"</a>\n", |
| 1572 | preRequest, rel_request, rel_request); |
| 1573 | } |
| 1574 | FPRINTF(outfile, "\tOwner: %s, Lock: %s, State: %d, Mode: %d, Flags: 0x%02X\n", |
| 1575 | (const TEXT*) HtmlLink(preOwn, request->lrq_owner), |
| 1576 | (const TEXT*) HtmlLink(preLock, request->lrq_lock), request->lrq_state, |
| 1577 | request->lrq_requested, request->lrq_flags); |
| 1578 | FPRINTF(outfile, "\tAST: 0x%p, argument: 0x%p\n", |
| 1579 | request->lrq_ast_routine, request->lrq_ast_argument); |
| 1580 | prt_que2(outfile, LOCK_header, "\tlrq_own_requests", |
| 1581 | &request->lrq_own_requests, offsetof(lrq, lrq_own_requests), preRequest); |
| 1582 | prt_que2(outfile, LOCK_header, "\tlrq_lbl_requests", |
| 1583 | &request->lrq_lbl_requests, offsetof(lrq, lrq_lbl_requests), preRequest); |
| 1584 | prt_que2(outfile, LOCK_header, "\tlrq_own_blocks ", |
| 1585 | &request->lrq_own_blocks, offsetof(lrq, lrq_own_blocks), preRequest); |
| 1586 | prt_que2(outfile, LOCK_header, "\tlrq_own_pending ", |
| 1587 | &request->lrq_own_pending, offsetof(lrq, lrq_own_pending), preRequest); |
| 1588 | FPRINTF(outfile, "\n"); |
| 1589 | } |
| 1590 | |
| 1591 | |
| 1592 | static void prt_que(OUTFILE outfile, |