malware – Browser threw me on same ad-site some seconds after scrolling on completely separate webpages

I was scrolling on two completely separate web pages, pages I have visited many times before. However they do both have ads. My browser is Opera, and I use an adblocker (on the other site it doesn’t always block all ads). After opening the page and scrolling on it for a while, I’m not sure but after maybe 5-30 seconds on the page, the browser redirected me to a different page (in the same tab), which was a page advertising an ISP/phone company, but it was a false ad, which would surely give viruses/etc if clicked on. These incidents happened within 10 hours of each other, and when the second one happened, I had many tabs open, including one from the page where it happened first.

In the past I’ve encountered many kinds of popups and ads, but this one seems strange because 1) it directed me to the same malware-ad page from two totally separate pages (the topic of these pages is nothing similar, one is blog about music lyrics and the other a game wiki), and 2) I did not click anything at the moment when it redirected me to that page. Also my Opera settings says “popups and redirecting” is disabled. A whois-service said the IP had been registered yesterday.

Quick virus scan didn’t find anything, I am now running full scan. I want to know how this kind of thing works, and what should I do to prevent it / does it mean I have malware?

EDIT1: I googled about the first site that did this. I reveal that the site is wowhead.com (wiki-style page for World of warcraft -videogame). There was lots of forum threads complaining about redirecting ads on that page, dating from 2016 to 2019. If it was caused by their ad, I’m not sure why my adblock let that ad through. Also, I had a wowhead tab open while browsing the other page that did this, so is it possible that the same script would somehow redirect me in another tab of a different page?

When will ipv6 completely replace ipv4?

Hello,

some people start using ipv6,

Do you think when ipv6 will completely replace ipv4? … | Read the rest of https://www.webhostingtalk.com/showthread.php?t=1808923&goto=newpost

simplifying expressions – Computations with OptimizedExpressions without completely expanding them

I have to manipulate huge expressions that are rational functions of many (∼30) variables with integer coefficients. Storing them just as a ratio of two polynomials would be impractical. But they can be represented as multi-level (∼140 levels) nested sums of fractions. Storing them in this form still would be impractical (billions of nodes), but, luckily, they have lots of repeated sub-expressions, so I store them as expressions with Experimental`OptimizedExpression head, where all repeated parts are recursively extracted and denoted by auxiliary intermediate variables. In this form my expressions only have a few thousands of nodes.

To convert expressions to this optimized form I use Experimental`OptimizeExpression function, with some additional custom post-processing. Often, I have a list of expressions, but as they usually have many shared repeated parts, the list can be efficiently represented as a single optimized expression where all shared parts are extracted.

Now, I need to do some symbolic computations with optimized expressions: addition, multiplication, division and a substitution of one optimized expression for a variable in another. In all these cases, I want to get a single optimized expression as a result, where each shared repeated part among operands is extracted and denoted by a single variable.

For smaller expressions, this can be done by a brute-force approach: expand the operands first, perform the operation as usual and, finally, apply Experimental`OptimizeExpression to the result to get an optimized form. For larger expressions, it becomes too slow. I was about to write my custom algorithm for extracting shared parts from several optimized expressions without fully expanding them. But I thought that other people, likely, already have faced a similar problem. So, I would appreciate if anybody has an existing solution, and is willing to share it. Or, maybe, there is already a function in Mathematica that can do it?

flashing rom – Cannot start recovery or fastboot and not go to EDL completely (Redmi Note 4)

Read the full text and help me if anything can solve my problem. Also, I can't go to the Mi Help Center due to this block, so can you suggest ways the help center person would do to fix this problem?

I have Redmi Note 4 (SD).
I updated MIUI port 11.0.6.0 for mido (ROM discussed in this video).
It had a lot of errors, so I was trying to get back to stock ROM using My Flash Tool (old version).

I was using Linux for fastboot and adb commands and for My Flash Tool I was using win 7 in the virtual box

I selected clean_all & lock.bat
But after the systerm image processing it gave me an error

the error message said something about the partition was not empty (sorry I can't remember the exact error and the log file no longer exists)

Now my phone was in fastboot mode for at least 5 hours, so I used

fastboot reboot

through the Linux terminal.

But the phone won't start and it gave me black (empty screen)

I thought the battery might be low, but when I connected it to the charger nothing happened.

I couldn't boot into recovery mode or quick boot (and I can't do it now either).

I searched the internet for more help and found about EDL mode.
I tried but Virtual Machine was not loading the Qualcomm driver, so I installed windows 10 .

ALSO
I searched about the error on the internet and found the solution to use the latest tool my flash.

So I tried that. BUT I'M NOT SURE IF YOU ARE CONNECTED BY THE RIGHT EDL MODE BECAUSE MY FLASH TOOL INSTEAD OF DISPLAYING COMX AS THE DEVICE NAME, IT IS SHOWING MY INCOMPLETE NAME OF THE FASTBOOT DEVICE .

I clicked to flash selecting wipe everything and lock but it gave me this error

The volume does not contain a recognized file system. Make sure that all the necessary file system drivers are loaded and that the volume is not damaged.

THE DEVICE IS ALSO DISPLAYED IN THE LATEST VERSION BUT NOT IN A PREVIOUS VERSION IN EDL MODE

Then after many attempts to flash

Now show this

$ fastboot -s 34564c88 getvar product 2> & 1 | Findstr / r / c: "^ product: * MSM8953" || fastboot -s 34564c88 getvar product 2> & 1 | Findstr / r / c: "^ product: * mido" || echo Image and device do not match

He was stuck on this for over 1000 seconds.

I looked it up and tried this solution. In this, it says to delete lines 10 and 11, but in my file it was present in 4 places, so I removed them all.

But then it got stuck in the following command in clean_all & lock.bat archive

(9:39:38 PM 34564c88): start process id 8956 name cmd
(9:39:38 PM 34564c88): info1: $ rem fastboot -s 34564c88 delete bk12 2> & 1
(9:39:38 PM 34564c88): info1: $ if not 0 == 0 exit / B 1
(9:39:38 PM 34564c88): info1: $ fastboot -s 34564c88 oem device-info 2> & 1 | Findstr / r / c: "Device Unlocked: True" || Locked OEM Echo Device

To try, I removed this line as well, but then it got stuck on the next line.


ALSO TO ACCESS EDL WE NEED SHORT JTAG PINS BUT MY LAPTOP (WITH WIN 10) ACCEPTS IT WITHOUT DOING THAT

Flashing ROM: HOW TO UNLOCK THE REDMI NOTE 4? YOU CANNOT BOOT IN RECOVERY OR QUICK START AND NOT GO TO EDL COMPLETELY!

READ THE FULL TEXT AND HELP ME IF SOMETHING CAN SOLVE MY PROBLEM. I CANNOT ALSO GO TO MY HELP CENTER BECAUSE OF THIS LOCKOUT SO YOU CAN SUGGEST WAYS THE HELP CENTER PERSON WILL DO TO FIX THIS PROBLEM

I have Redmi Note 4 (SD).
I updated MIUI port 11.0.6.0 for mido (ROM discussed in this video).
It had a lot of errors, so I was trying to get back to stock ROM using My Flash Tool (old version).

I was using Linux for fastboot and adb commands and for My Flash Tool I was using win 7 in the virtual box

I selected clean_all & lock.bat
But after the systerm image processing it gave me an error

the error message said something about the partition was not empty (sorry I can't remember the exact error and the log file no longer exists)

Now my phone was in fastboot mode for at least 5 hours, so I used

fastboot reboot

through the Linux terminal.

But the phone won't start and it gave me black (empty screen)

I thought the battery might be low, but when I connected it to the charger nothing happened.

I couldn't boot into recovery mode or quick boot (and I can't do it now either).

I searched the internet for more help and found about EDL mode.
I tried but Virtual Machine was not loading the Qualcomm driver, so I installed windows 10 .

ALSO
I searched about the error on the internet and found the solution to use the latest tool my flash.

So I tried that. BUT I'M NOT SURE IF YOU ARE CONNECTED BY THE RIGHT EDL MODE BECAUSE MY FLASH TOOL INSTEAD OF DISPLAYING COMX AS THE DEVICE NAME, IT IS SHOWING MY INCOMPLETE NAME OF THE FASTBOOT DEVICE .

I clicked to flash selecting wipe everything and lock but it gave me this error

The volume does not contain a recognized file system. Make sure that all the necessary file system drivers are loaded and that the volume is not damaged.

THE DEVICE IS ALSO DISPLAYED IN THE LATEST VERSION BUT NOT IN A PREVIOUS VERSION IN EDL MODE

Then after many attempts to flash

Now show this

$ fastboot -s 34564c88 getvar product 2> & 1 | Findstr / r / c: "^ product: * MSM8953" || fastboot -s 34564c88 getvar product 2> & 1 | Findstr / r / c: "^ product: * mido" || echo Image and device do not match

He was stuck on this for over 1000 seconds.

I looked it up and tried this solution. In this, it says to delete lines 10 and 11, but in my file it was present in 4 places, so I removed them all.

But then it got stuck in the following command in clean_all & lock.bat archive

(9:39:38 PM 34564c88): start process id 8956 name cmd
(9:39:38 PM 34564c88): info1: $ rem fastboot -s 34564c88 delete bk12 2> & 1
(9:39:38 PM 34564c88): info1: $ if not 0 == 0 exit / B 1
(9:39:38 PM 34564c88): info1: $ fastboot -s 34564c88 oem device-info 2> & 1 | Findstr / r / c: "Device Unlocked: True" || Locked OEM Echo Device

To try, I removed this line as well, but then it got stuck on the next line.


ALSO TO ACCESS EDL WE NEED SHORT JTAG PINS BUT MY LAPTOP (WITH WIN 10) ACCEPTS IT WITHOUT DOING THAT


PLEASE GUIDE ME

reinvent the wheel: an echo program, mainly in C and completely from scratch

This is a echo program without runtime or standard library. It is intended to be compiled with -nostdlib on an amd64 Linux system.

static signed long mywrite(int fd, const void *buf, unsigned long count) {
    signed long retval;
    __asm__ __volatile__(
        "syscall" :
        "=a" (retval) :
        "a" (1), "D" (fd), "S" (buf), "d" (count) :
        "rcx", "r11", "memory"
    );
    return retval;
}

static void myexit(int status) __attribute__((__noreturn__));
static void myexit(int status) {
    __asm__ __volatile__(
        "syscall" :
        :
        "a" (60), "D" (status) :

    );
    __builtin_unreachable();
}

static unsigned long mystrlen(const char *str) {
    const char *pos = str;
    while(*pos) ++pos;
    return pos - str;
}

static void writearg(char *str, char end) {
    unsigned long size = mystrlen(str) + 1;
    unsigned long written = 0;
    str(size - 1) = end;
    do {
        signed long result = mywrite(1, str + written, size - written);
        if(result < 0) myexit(1);
        written += result;
    } while(written < size);
}

void _start(void) __attribute__((__naked__, __noreturn__));
void _start(void) {
    __asm__(
        "lea 8(%rsp), %rdint"
        "call startargs"
    );
}

static void startargs(char *argv()) __attribute__((__noreturn__, __used__));
static void startargs(char *argv()) {
    if(!*argv || !*++argv) {
        myexit(mywrite(1, "n", 1) != 1);
    }
    for(;;) {
        char *str = *argv;
        if(*++argv) {
            writearg(str, ' ');
        } else {
            writearg(str, 'n');
            myexit(0);
        }
    }
}

Some of my concerns:

  • Does my program behavior fully meet the standard for echo?
  • Am I making unwarranted assumptions that could make my code not work in a future version of Linux (or compiler)? In particular, it's the way I'm overriding null terminators in argv values ​​ok?
  • Since my code is Linux-on-amd64-only anyway, is there any other assumptions I can make? For example, can I assume that Linux will always have argv values, so just make a big one write to call after changing all nulls, instead of one per argument? (I know I would still have to repeat write in case of partial writes. I also know that I could copy the strings around me, but I prefer to write them from where I got them.)
  • Instead of having _start like a piece of assembly and my actual code in startargs, Is there any way to put my actual code in _start but still be able to safely get command line arguments? (It also feels silly to do a call that will never ret, but I don't see a better way to maintain stack alignment.)

Deleting "index.php? Page =" in .htaccess completely and once and for all

This question has been driving me crazy. There seem to be hundreds of responses online and on various StackExchange websites, but they remove index.php (agreement ?page=) I like this:

Options +FollowSymLinks -MultiViews
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1 (L,QSA)
RewriteCond %{THE_REQUEST} ^(A-Z){3,}s(.*)/index.php (NC)
RewriteRule ^ %1 (R=301,L)

…or this way:

RewriteBase /
RewriteCond %{HTTP:X-Requested-With} !^XMLHttpRequest$
RewriteCond %{THE_REQUEST} ^(^/)*/index.php (NC)
RewriteRule ^index.php(.*)$ $1 (R=301,NS,L)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 (QSA,L)

… or delete both, but the page won't work (won't be recognized as a PHP file), like this:

Options -MultiViews
RewriteCond %{THE_REQUEST} ^(A-Z){3,}s/+index.php?page=((^s&)+) (NC)
RewriteRule ^ /%1? (R=302,L)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^((^/)+)/?$ index.php?page=$1 (L,QSA)

How the hell do I delete? index.php?page= and still get the remaining file / URL to be recognized as a proper PHP file?

The iMac's hard drive failed completely,

My 2011 vintage iMac hard drive completely failed and local Apple techs say they can't retrieve any data. I remember that I had an automatic backup of files in iCloud, but I don't know how to recover them from there.

How do I completely remove the cilium from Ubuntu 18?

I installed cilium with:

kubectl create -f https://raw.githubusercontent.com/cilium/cilium/1.7.2/install/kubernetes/quick-install.yaml

A couple of minutes later, network connectivity on the host was cut (it could connect from the host but not from another host). I removed cilium with

kubectl delete -f https://raw.githubusercontent.com/cilium/cilium/1.7.2/install/kubernetes/quick-install.yaml

and restarted. That restored my network connectivity, but the syslog receives messages like this every 5 seconds:

Apr 19 10:07:48 tv kubelet(19221): W0419 10:07:48.258636 19221 cni.go:202) Error validating CNI config list {"cniVersion":"0.3.1","name":"cilium","plugins":({"cniVersion":"0.3.1","enable-debug":false,"name":"cilium","type":"cilium-cni"})}: (failed to find plugin "cilium-cni" in path (/opt/cni/bin))

What should I do to completely remove the cilium?