main reason for coronavirus …?

Hello friends,

Tell me, what is the main reason for the coronavirus …?

Is there a reason why JWT cannot be used as a "connection context variable" for TLS?

Besides the fact that TLS has no "connection context" variables, is there any reason why this could not be technically incorporated into the standard for something like JWT?

Why is it necessary

When a browser sends multiple requests to the same API server, it repeatedly returns the JWT in the header. This means additional data overhead and each time the server must check the JWT.

I would like to see the TLS standard include "connection related context variables" so that JWTs can be sent once and used on multiple HTTP REQUEST over this TLS connection.

How it could work

1) The client connects to the server and a TLS encrypted session is established.

2) The client sends the JWT on the server side – there are two options for this:

A) The client can send connection variables directly to the TLS layer. The client sets the client-side variable and TLS sends the data on the server side. The client variable name is always prefixed with "CLIENT-".

B) The client sends an HTTP request on the TLS session to a specific dedicated endpoint to be used to define a variable / api / setJWT TLS. The client sends the JWT as POST. The server reads the JWT, checks it, and then sets it in the TLS connection context.

(B) would work better because the client software would be more difficult to change (browsers).

3)

On the server side, the ITLSConnectionContext interface of the encapsulating TLS object is made available from the HTTP REQUEST handlers. ITLSConnectionContext has three functions, string () ListVariables (), string GetVariable (name), SetVariable (name, string).

Assuming 2B is used, when GetVariable ("JWT") succeeds, we can assume that it is valid.

How it could work without changing the TLS standard

If a particular TLS connection between the server and the client has a secure identity, the application layer can link it to a simple dictionary search. Maybe it could be a GUID (as well as the client-side IPAddress-Port tuple). This GUID approach would mean that each language infrastructure can implement native search, which makes other benefits possible, where objects in native memory can also be linked, not just platform-independent strings.

Other benefits

In addition, the server can use variables on the context for other purposes:

1) A PK database for the person behind the JWT, PersonID. It can be a flow interface
2) A particular flow (TCP connection) to another resource
3) A file lock on a log file linked to the user

The web would be better.


But am I wrong? Am I missing something that would make this impractical and insecure?

Advanced SEO techniques to succeed in 2020

In recent years, SEO has changed a lot. In its infancy, SEO was limited to stuffing keywords, spam links and modifying the main code. Fortunately, Google has eliminated many practices designed only to manipulate search results.

To improve the quality of search engine results, Google continues to modernize its algorithms. As a result, the SEO techniques used during the first decade of the 21st century are no longer effective today.

For this reason, online businesses must follow the latest search engine algorithms and update their SEO techniques over time.

In the next section, we'll talk about some SEO techniques that will help you generate leads in 2020 and beyond. So without further ado, let's get started.

.

c ++ – Logically, is there a reason why ++ i ++ cannot be a valid expression?

I had to increment my integer twice in a loop, so I thought I would try to be smart:

for (int i = 0; !sl.isEmpty(); ++i++) { ... }

++i++ is not, however, an attributable expression, at least in GCC.
Is there a technical reason for this, that logically it would be impossible to implement such a syntax rule?

In my mind,

int i(0);
QTextStream(stdout) << i++; // 0
QTextStream(stdout) << ++i; // 2
i = 0;
QTextStream(stdout) << ++i++; // impossible, but it should give 1

However, I guess there are good reasons why this cannot be the case.
Just curious.

A technical reason not to use my own HTTP TEXT response code if I am developing both a server and a client?

While you can control all clients and servers, you also have a third end that you should be aware of: intermediaries.

Intermediaries are web servers, proxies, caches, web application firewall, load balancer, CDN and other intermediary systems that process the HTTP message that may be between your clients and your servers. Even if you use end-to-end encryption and control all of the intermediaries in use, it is usually easier to integrate new intermediaries into the system when you meet the standards.

That said, unless otherwise configured, these intermediaries should normally only use the status code to decide how to process the message and should have ignored the reason sentence, so in most cases , he should be sure to customize the reason sentence. The reason sentence should be reserved to carry only the human readable reason which should not affect the way the message should be handled.

sharepoint takes care of working on it for no reason

Battery exchange network

The Stack Exchange network includes 175 question and answer communities, including Stack Overflow, the largest and most reliable online community for developers who want to learn, share knowledge and develop their careers.

Visit Stack Exchange

root access – What is the reason for the error "Unable to create directory, errno: 13" on Android Linux?

I want to run diag_mdLog file of my request. I get different behavior on two apps. On a simple project, I am able to execute it, but on a complex project, there is an unknown problem that causes the error "Authorization denied".

Simple project code:(Kotlin)

...
execAndShowOut("diag_mdLog -o /sdcard/oem_logs/")
...
private fun execAndShowOut(command: String) {

        val runtime = Runtime.getRuntime()
        val suProcess = runtime.exec("su -c $command")

        errLogs = ""
        outLogs = ""

        val errorGobbler = StreamGobbler(suProcess.errorStream, "ERROR", logger = {
            log(it)
            errLogs += it + "n"
        })
        // any output?
        val outputGobbler = StreamGobbler(suProcess.inputStream, "OUTPUT", logger = {
            log(it)
            outLogs += it + "n"
        })
        // kick them off
        errorGobbler.start()
        outputGobbler.start()

        GlobalScope.launch {
            // any error???
            val exitVal = suProcess.waitFor(10, TimeUnit.SECONDS)
            log("ExitValue: $exitVal")

            suProcess.destroy()
            stopRunning()

            out("--------- ERROR----n")
            out(errLogs)
            out("nn--------- OUTPUT----n")
            out(outLogs)
        }
    }
class StreamGobbler @JvmOverloads internal constructor(
    private val inputStream: InputStream,
    private val type: String,
    private val logger: ((String) -> Unit)? = null,
    private val outputStream: OutputStream? = null
) : Thread() {

    override fun run() {
        try {
            var printWriter: PrintWriter? = null
            if (outputStream != null)
                printWriter = PrintWriter(outputStream)

            val inputStreamReader = InputStreamReader(inputStream)
            val bufferedReader = BufferedReader(inputStreamReader)
            var line: String?
            while (bufferedReader.readLine().also { line = it } != null) {
                printWriter?.println(line)
                logger?.invoke("$type>$line")
            }
            printWriter?.flush()

        } catch (ioe: IOException) {
            ioe.printStackTrace()
        }
    }
}

Result: Some qmdl files in / sdcard / oem_logs /

Relevance code of the complex project:(Java)

...
 // Get a handler that can be used to post to the main thread
        Handler mainHandler = new Handler(app.getApplicationContext().getMainLooper());
        // This is your code
        mainHandler.post(() -> {
            try {
                exec("rm -r /sdcard/oem_logs/");
                exec("ls -l /vendor/bin/diag_mdlog");
                exec("su -c /vendor/bin/diag_mdlog -o /sdcard/oem_logs/");
            } catch (Exception e) {
                e.printStackTrace();
            }
        });
...
private Process exec(String command) throws IOException, InterruptedException {

        Runtime runtime = Runtime.getRuntime();
        Process suProcess = runtime.exec(command);

        new StreamGobbler(suProcess.getErrorStream(), "ERROR").start();
        new StreamGobbler(suProcess.getInputStream(), "OUTPUT").start();

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
            suProcess.waitFor(10, TimeUnit.SECONDS);
        } else {
            suProcess.wait(10 * 1000);
        }
        suProcess.destroy();
        return suProcess;
    }
public class StreamGobbler extends Thread {

    private InputStream is;
    private String type;
    private OutputStream os;

    public StreamGobbler(InputStream is, String type) {
        this(is, type, null);
    }

    StreamGobbler(InputStream is, String type, OutputStream redirect) {
        this.is = is;
        this.type = type;
        this.os = redirect;
    }

    public void run() {
        try {
            PrintWriter pw = null;
            if (os != null)
                pw = new PrintWriter(os);

            InputStreamReader isr = new InputStreamReader(is);
            BufferedReader br = new BufferedReader(isr);
            String line;
            while ((line = br.readLine()) != null) {
                if (pw != null)
                    pw.println(line);
                SigmaLog.d(type + ">" + line);
            }
            if (pw != null)
                pw.flush();
        } catch (IOException ioe) {
            ioe.printStackTrace();
        }
    }
}

Result:

ERROR>rm: /sdcard/oem_logs/: No such file or directory
OUTPUT>-rwxr-xr-x 1 root shell 46024 2009-01-01 05:30 /vendor/bin/diag_mdlog
OUTPUT>diag_mdlog: command = o
OUTPUT>diag:main: kernel supported: NUM_PERIPHERALS = 6, DIAG_CON_ALL: 127
OUTPUT>diag: No Session is active for the given mask
OUTPUT>diag_mdlog: Error creating: /sdcard/oem_logs/, errno: 13
OUTPUT>diag_mdlog: Attempting to use default directory
OUTPUT>diag:In main failed to create xml file 
OUTPUT>diag_mdlog: offline_log is 
OUTPUT>
OUTPUT>diag_mdlog: Continuing with default directory path /sdcard/diag_logs/20200117_134112
OUTPUT>diag_mdlog: Unable to create directory, errno: 13 Exiting....

I know there can be a lot of reasons for this failure and I can't share all the code here, so I want to know the reason for this error.

Please suggest it.

How to know the reason why Magento 2 The authorized memory size is exhausted even though memory_limit = -1?

I hope you are well!
I have a problem when the loading page of the product grid with param is p=2.
Fatal error: allowed memory size of xxx bytes exhausted (attempt to allocate xx bytes) in /xx/vendor/magento/framework/Interception/PluginList/PluginList.php on line 266. My php.ini file is defined memory_limit = -1.
I don't know how to solve this. So any suggestion helps me to verify that it is welcome!

[ Politics ] Open question: why are the Liberals making up news against President Trump so that the rest of the world hates him for no good reason?

[Politics] Open question: why are the Liberals making up news against President Trump so that the rest of the world hates him for no good reason?

I can't set the background color for some reason – M2.3.3

The problem makes no sense, the wizard is called and defined and I'm just adjusting the properties of the image before resizing the initialization as follows:

$productImage = $_imagehelper->init($_product, $image)->backgorundColor(array(255,255,255))->resize($image_width, $image_height);
                            $productImageUrl = $productImage->getUrl();

And the error log as follows:

2020/01/08 21:35:49 (error) 25238#25238: *2028200 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to undefined method MagentoCatalogHelperImage::backgorundColor() in /home/***/m2/public/app/design/frontend/****/***/Smartwave_Filterproducts/templates/grid.phtml:84
Stack trace:
#0 /home/***/m2/public/vendor/magento/framework/View/TemplateEngine/Php.php(59): include()
#1 /home/***/m2/public/vendor/magento/framework/View/Element/Template.php(271): MagentoFrameworkViewTemplateEnginePhp->render(Object(SmartwaveFilterproductsBlockHomeFeaturedListInterceptor), '/home/***/m2/...', Array)
#2 /home/***/m2/public/vendor/magento/framework/View/Element/Template.php(301): MagentoFrameworkViewElementTemplate->fetchView('/home/***/m2/...')
#3 /home/***/m2/public/vendor/magento/framework/View/Element/AbstractBlock.php(1097): MagentoFrameworkViewElementTemplate->_toHtml()
#4 /home/***/m2/public/vendor/magento/framework/View/Element/AbstractBlock.php(1101): MagentoFrameworkViewElementAbstractBlock->MagentoFramework" while reading response header from upstream, client: **********, server: ***.com, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "***.com", referrer: "https://***.com/****.html"