Commit b33f59d
committed
internal: commit a session only once accepted
A shell, exec or subsystem request changes the channel only once the
callback accepts it. The session type and command are set for the
callback to read and put back if it refuses, and CLIENT_DONE follows
acceptance alone, so wolfSSH_accept() no longer reports an established
session, or starts SFTP, on a request it answered CHANNEL_FAILURE.
- DoChannelRequestSession() carries the three arms, which differed only
in the type and the callback consulted
- unit.c drives a refused shell, exec and subsystem request through
DoChannelRequest() and checks nothing was committed
- regress.c runs a server whose shell callback refuses and checks
accept() stays at ACCEPT_SERVER_CHANNEL_ACCEPT_SENT
Issue: F-88521 parent 8121dac commit b33f59d
3 files changed
Lines changed: 212 additions & 41 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12617 | 12617 | | |
12618 | 12618 | | |
12619 | 12619 | | |
| 12620 | + | |
| 12621 | + | |
| 12622 | + | |
| 12623 | + | |
| 12624 | + | |
| 12625 | + | |
| 12626 | + | |
| 12627 | + | |
| 12628 | + | |
| 12629 | + | |
| 12630 | + | |
| 12631 | + | |
| 12632 | + | |
| 12633 | + | |
| 12634 | + | |
| 12635 | + | |
| 12636 | + | |
| 12637 | + | |
| 12638 | + | |
| 12639 | + | |
| 12640 | + | |
| 12641 | + | |
| 12642 | + | |
| 12643 | + | |
| 12644 | + | |
| 12645 | + | |
| 12646 | + | |
| 12647 | + | |
| 12648 | + | |
| 12649 | + | |
| 12650 | + | |
| 12651 | + | |
| 12652 | + | |
| 12653 | + | |
| 12654 | + | |
| 12655 | + | |
| 12656 | + | |
| 12657 | + | |
| 12658 | + | |
| 12659 | + | |
| 12660 | + | |
| 12661 | + | |
| 12662 | + | |
| 12663 | + | |
| 12664 | + | |
| 12665 | + | |
| 12666 | + | |
| 12667 | + | |
| 12668 | + | |
| 12669 | + | |
| 12670 | + | |
| 12671 | + | |
| 12672 | + | |
| 12673 | + | |
| 12674 | + | |
12620 | 12675 | | |
12621 | 12676 | | |
12622 | 12677 | | |
| |||
12672 | 12727 | | |
12673 | 12728 | | |
12674 | 12729 | | |
12675 | | - | |
12676 | | - | |
12677 | | - | |
12678 | | - | |
12679 | | - | |
12680 | | - | |
12681 | | - | |
12682 | | - | |
| 12730 | + | |
| 12731 | + | |
12683 | 12732 | | |
12684 | 12733 | | |
12685 | | - | |
12686 | | - | |
12687 | | - | |
12688 | | - | |
12689 | | - | |
12690 | | - | |
12691 | | - | |
12692 | | - | |
12693 | | - | |
12694 | | - | |
12695 | | - | |
12696 | | - | |
| 12734 | + | |
| 12735 | + | |
12697 | 12736 | | |
12698 | 12737 | | |
12699 | | - | |
12700 | | - | |
12701 | | - | |
12702 | | - | |
12703 | | - | |
12704 | | - | |
12705 | | - | |
12706 | | - | |
12707 | | - | |
12708 | | - | |
12709 | | - | |
12710 | | - | |
| 12738 | + | |
| 12739 | + | |
| 12740 | + | |
12711 | 12741 | | |
12712 | 12742 | | |
12713 | 12743 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1646 | 1646 | | |
1647 | 1647 | | |
1648 | 1648 | | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
| 1653 | + | |
| 1654 | + | |
| 1655 | + | |
| 1656 | + | |
| 1657 | + | |
| 1658 | + | |
| 1659 | + | |
| 1660 | + | |
| 1661 | + | |
| 1662 | + | |
| 1663 | + | |
| 1664 | + | |
| 1665 | + | |
| 1666 | + | |
| 1667 | + | |
| 1668 | + | |
| 1669 | + | |
| 1670 | + | |
| 1671 | + | |
| 1672 | + | |
| 1673 | + | |
| 1674 | + | |
| 1675 | + | |
| 1676 | + | |
| 1677 | + | |
| 1678 | + | |
| 1679 | + | |
| 1680 | + | |
| 1681 | + | |
| 1682 | + | |
| 1683 | + | |
| 1684 | + | |
| 1685 | + | |
| 1686 | + | |
| 1687 | + | |
| 1688 | + | |
| 1689 | + | |
| 1690 | + | |
| 1691 | + | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
| 1697 | + | |
| 1698 | + | |
| 1699 | + | |
1649 | 1700 | | |
1650 | 1701 | | |
1651 | 1702 | | |
| |||
12480 | 12531 | | |
12481 | 12532 | | |
12482 | 12533 | | |
| 12534 | + | |
12483 | 12535 | | |
12484 | 12536 | | |
12485 | 12537 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8584 | 8584 | | |
8585 | 8585 | | |
8586 | 8586 | | |
| 8587 | + | |
| 8588 | + | |
| 8589 | + | |
| 8590 | + | |
| 8591 | + | |
| 8592 | + | |
| 8593 | + | |
| 8594 | + | |
| 8595 | + | |
| 8596 | + | |
| 8597 | + | |
| 8598 | + | |
| 8599 | + | |
| 8600 | + | |
| 8601 | + | |
| 8602 | + | |
| 8603 | + | |
8587 | 8604 | | |
8588 | 8605 | | |
8589 | 8606 | | |
| |||
8836 | 8853 | | |
8837 | 8854 | | |
8838 | 8855 | | |
| 8856 | + | |
| 8857 | + | |
| 8858 | + | |
| 8859 | + | |
| 8860 | + | |
| 8861 | + | |
| 8862 | + | |
| 8863 | + | |
| 8864 | + | |
8839 | 8865 | | |
8840 | 8866 | | |
8841 | 8867 | | |
| |||
8962 | 8988 | | |
8963 | 8989 | | |
8964 | 8990 | | |
| 8991 | + | |
| 8992 | + | |
| 8993 | + | |
| 8994 | + | |
| 8995 | + | |
| 8996 | + | |
| 8997 | + | |
| 8998 | + | |
| 8999 | + | |
| 9000 | + | |
| 9001 | + | |
| 9002 | + | |
| 9003 | + | |
| 9004 | + | |
| 9005 | + | |
| 9006 | + | |
| 9007 | + | |
| 9008 | + | |
| 9009 | + | |
| 9010 | + | |
| 9011 | + | |
| 9012 | + | |
| 9013 | + | |
| 9014 | + | |
| 9015 | + | |
| 9016 | + | |
| 9017 | + | |
| 9018 | + | |
| 9019 | + | |
| 9020 | + | |
| 9021 | + | |
| 9022 | + | |
| 9023 | + | |
| 9024 | + | |
| 9025 | + | |
| 9026 | + | |
| 9027 | + | |
| 9028 | + | |
| 9029 | + | |
| 9030 | + | |
| 9031 | + | |
| 9032 | + | |
| 9033 | + | |
| 9034 | + | |
| 9035 | + | |
| 9036 | + | |
| 9037 | + | |
| 9038 | + | |
| 9039 | + | |
| 9040 | + | |
| 9041 | + | |
| 9042 | + | |
| 9043 | + | |
| 9044 | + | |
| 9045 | + | |
| 9046 | + | |
| 9047 | + | |
| 9048 | + | |
| 9049 | + | |
| 9050 | + | |
| 9051 | + | |
| 9052 | + | |
| 9053 | + | |
| 9054 | + | |
| 9055 | + | |
| 9056 | + | |
| 9057 | + | |
| 9058 | + | |
| 9059 | + | |
| 9060 | + | |
| 9061 | + | |
| 9062 | + | |
8965 | 9063 | | |
8966 | 9064 | | |
8967 | 9065 | | |
| |||
9249 | 9347 | | |
9250 | 9348 | | |
9251 | 9349 | | |
9252 | | - | |
9253 | | - | |
9254 | | - | |
9255 | | - | |
9256 | | - | |
9257 | | - | |
9258 | | - | |
9259 | | - | |
9260 | | - | |
9261 | 9350 | | |
9262 | 9351 | | |
9263 | 9352 | | |
| |||
0 commit comments